Re: [isabelle-dev] Isabelle/jEdit output panel

2012-10-11 Thread Christian Sternagel
Stacking of tooltips is nice. Also that these stay open until they are 
closed explicitly is far more convenient than the previous behavior. A 
tiny remark: for linux (and I guess also windows) users, it is 
surprising to have icons on the top-left of a window, rather than 
top-right :D. I'm just saying.


cheers

chris

On 10/05/2012 11:40 PM, Makarius wrote:

On Fri, 21 Sep 2012, Makarius wrote:


This also means that tooltips, hyperlinks etc. should now work the
same for Output, just as for the input text.

The next step will be to make tooltips and popups themselves use the
same technology recursively.


The latter is now addressed in Isabelle/a1bd8fe5131b, which uses the new
Pretty_Tooltip everywhere for input or output.  It also allows some
stacking of tooltips: activating the formal link in one tooltip opens
another.  Thus a tooltip for type information can open another one for
sort information on the displayed type variables, for example.

Loss of focus or ESCAPE dispose such windows. Technically, this is a bit
like computer game programming: one needs to play with GUI events until
it works smoothly in the application.  There are still some uneven
situations here, notably the keyboard focus.


 Makarius
___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


Re: [isabelle-dev] Isabelle/jEdit output panel

2012-10-11 Thread Walther Neuper

On 10/11/2012 08:35 AM, Christian Sternagel wrote:
A tiny remark: for linux (and I guess also windows) users, it is 
surprising to have icons on the top-left of a window, 


... not surprising for all users, e.g. Ubuntu has these icons on the 
top-left as well.



rather than top-right :D. I'm just saying.


___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


[isabelle-dev] Graphview

2012-10-11 Thread Florian Haftmann
Hi all,

the recently established graphview IMHO has currently two disadvantages:
* Misfit of node annotation size wrt. to the size of the full graphs –
node annotations are not readable within a reasonable size coverage of
the graph.
* Does not scale well (e.g. class_deps from Main.thy).

What are the plans for the next release?  Graph browsing is a tool too
vital that it can be set inoperative.  Is there any chancing for
improvements, or will there be a switch towards the classical browser
alternatively?

Cheers,
Florian

-- 

PGP available:
http://home.informatik.tu-muenchen.de/haftmann/pgp/florian_haftmann_at_informatik_tu_muenchen_de



signature.asc
Description: OpenPGP digital signature
___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


Re: [isabelle-dev] Shadowing of theorem names in locales

2012-10-11 Thread Johannes Hölzl
HOL-Probability (in Isabelle/bb5db3d1d6dd) and
Ordinary_Differential_Equations (in AFP/e9fa38f86b76) work now with this
patch.

A surprising change is found in Markov_Models:

  We get an error when an assumption has the same name as a fact in the
  locale:

locale loc
begin
  lemma X: True ..

  lemma assumes X: X shows True
^- raises Duplicate fact declaration local.X vs. 
local.X
 
Is this easily avoidable? I think this might confuse people and add a
maintenance burden when one adds a fact to a locale with a popular name.

 - Johannes



Am Mittwoch, den 10.10.2012, 16:51 +0200 schrieb Makarius:
 On Tue, 9 Oct 2012, Makarius wrote:
 
  On Sun, 7 Oct 2012, Florian Haftmann wrote:
 
  After some pondering I would argue that this should be forbidden:
  * (Complete) shadowing is a constant source of confusion.
  * Global interpretations are impossible then, since they would result in
  two global theorems with the same name.
 
  I've started some experiments with this idea and will report the empirical 
  results soon ...
 
 After some detours I am now back on Isabelle/28e37eab4e6f.
 
 In principle, the last big reform of locale + interpretation name space 
 prefixes has addressed the situation already, where each locale scope is 
 locally strict, but composing several of them in locale expressions etc. 
 works by mandatory or non-mandatory prefixes.
 
 Actual strictness checking is part of the underlying name space policy, 
 when bindings are applied and react with some naming. The local context 
 of the locale construction is particularly important here.  It was merely 
 a historical left-over that fact bindings were not checked strictly:
 
(1) in distant past facts were never strict and totally un-authentic
 
(2) the Isar proof body mode allows to override 'notes' as it does for
'fixes'.
 
 So with the ch-strict changeset applied to the critical spot of local 
 notes, the namespace policy enforces the concentual locale scopes.
 
 Applying this in practice leads to many surprises about situations found 
 in existing theory libraries, though.  Some of the changsets leading up to 
 Isabelle/28e37eab4e6f already sort this out.  Some other ad-hoc changes 
 are attached as ch-test here.
 
 
 With Isabelle/28e37eab4e6f + ch-strict + ch-test and AFP/77f79b2076f1
 the following sessions fail:
 
 BDD, Dijkstra_Shortest_Path, Free-Groups, Group-Ring-Module, HOL-Algebra, 
 HOL-Number_Theory, HOL-ex, JinjaThreads, KBPs, Markov_Models, Ordinal, 
 Ordinary_Differential_Equations, Pi_Calculus, Presburger-Automata, 
 PseudoHoops, Psi_Calculi, Refine_Monadic, Simpl, Slicing, Topology, 
 Transitive-Closure-II, Valuation
 
 So the question if ch-strict can be activated soon is mainly a matter of 
 library space.  It is up to emerging volunteers to sort it out further.
 
 (For me it was interesting to see how Isabell/jEdit works on the 
 JinjaThreads monster session.  See also AFP/77f79b2076f1 of the result of 
 investing 3GB for poly, 4GB for java, and quite a bit of CPU time and 
 elapsed time.)
 
 
   Makarius
 ___
 isabelle-dev mailing list
 isabelle-...@in.tum.de
 https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


Re: [isabelle-dev] Hooks for postprocessing sessions!?

2012-10-11 Thread Lukas Bulwahn

Hi Florian,

this sounds  similar to ideas that (Alex and) Lars had to allow 
find_theorems to search on all Isabelle sessions. As far as I know, they 
have an implementation for this feature in their shelf.



Lukas

On 10/11/2012 02:44 PM, Florian Haftmann wrote:

Hi all,

recently I had the idea to generate reports for all accessible Isabelle
sessions containing e.g.

* all constants (with types) declared in a session
* all types declared in a session
* all classes declared in a session
* all theorems declared via »theorem«
* ...

The rationale is that this would allow for a quick analysis especially
of the AFP to find out which generally useful »auxiliary« stuff is
hidden there (e.g.
http://afp.hg.sourceforge.net/hgweb/afp/afp/file/e9fa38f86b76/thys/Binomial-Heaps/SkewBinomialHeap.thy#l1643).

Is there already feasible hook interface to hook in, e.g. in present.ML,
or can this only be done by an ad-hoc patch?

Cheers,
Florian



___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


Re: [isabelle-dev] Graphview

2012-10-11 Thread Lukas Bulwahn

Hi Florian,

Thanks for your feedback. The main developer Markus Kaiser is giving a 
presentation next week and we will discuss further steps.


Here's a part of a private German discussion with Makarius that explains 
how to switch back to the classical browser (in PG/Emacs).


in http://isabelle.in.tum.de/repos/isabelle/rev/7529c77ee92e ist nun 
alles erstmal integriert.  Einige Sachen funktionieren aber noch nicht 
so glatt, z.B. ein voller class_deps graph von HOL/Main.  Das eine oder 
andere Detail habe ich möglicherweise auch kaputt gemacht.


Man kann in isabelle tty oder emacs mit der print mode option -m 
graphview das neue Tool aktivieren, sonst wird wie bisher der alte 
browser verwendet.  Das gilt einheitlich für alle commands die intern 
auf display_graph basieren. Isabelle/jEdit verwendet stets Graphview in 
einem eigenen Dockable Window -- auch wenn das noch nicht 
Produktionsqualität erreicht.



Lukas


On 10/11/2012 01:31 PM, Florian Haftmann wrote:

Hi all,

the recently established graphview IMHO has currently two disadvantages:
* Misfit of node annotation size wrt. to the size of the full graphs --
node annotations are not readable within a reasonable size coverage of
the graph.
* Does not scale well (e.g. class_deps from Main.thy).

What are the plans for the next release?  Graph browsing is a tool too
vital that it can be set inoperative.  Is there any chancing for
improvements, or will there be a switch towards the classical browser
alternatively?

Cheers,
Florian



___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


Re: [isabelle-dev] Isabelle/jEdit output panel

2012-10-11 Thread Makarius

On Thu, 11 Oct 2012, Christian Sternagel wrote:

Stacking of tooltips is nice. Also that these stay open until they are 
closed explicitly is far more convenient than the previous behavior. A tiny 
remark: for linux (and I guess also windows) users, it is surprising to have 
icons on the top-left of a window, rather than top-right


I've fine-tuned the behaviour several times in the past few days, so it is 
relevant to refer to lasting changeset ids as usual.  The justification 
for the latter detail is here:


changeset:   49727:2fe56b600698
user:wenzelm
date:Sun Oct 07 16:15:31 2012 +0200
files:   src/Tools/jEdit/src/isabelle_rendering.scala 
src/Tools/jEdit/src/pretty_tooltip.scala

description:
make buttons closer to original mouse position;


Linux does not have any standards for placement of window control element, 
so I ignored that aspect above; the mouse movement was taken as decisive. 
I still get occasionally confused after trying to move the tooltip with 
its titel bar.  There is also the confusion when the detached tooltip has 
become a jEdit dockable and the user tries to clone it: the result is 
perfectly correct wrt. the dockable window model, but still confusingly 
empty.


Nonetheless, the basic functionality should work now without big 
surprises, like a tooltip stack that cannot be closed at all. (This is 
Isabelle/e3945ddcb9aa at the moment.)



Makarius
___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


Re: [isabelle-dev] Graphview

2012-10-11 Thread Makarius

On Thu, 11 Oct 2012, Florian Haftmann wrote:


* Misfit of node annotation size wrt. to the size of the full graphs –
node annotations are not readable within a reasonable size coverage of
the graph.
* Does not scale well (e.g. class_deps from Main.thy).


I've made 1-2 rounds of refinements of the codebase already, and worked 
slowly towards these most imminent issues.  (Presently at 
Isabelle/e3945ddcb9aa.)


The class_deps non-scalability probably stems from the omission of the 
transitive reduction (Hasse diagram).  This was probably done due to the 
anticipated locale graph visualization (which does not quite work), or it 
might be just an omission.  I was about to add the reduction 2 days ago, 
but got stuck elsewhere.  (Graph operations are always critical, and not 
to be rushed in any way.  We had famous drop-outs in that module already.)



What are the plans for the next release?  Graph browsing is a tool too 
vital that it can be set inoperative.  Is there any chancing for 
improvements, or will there be a switch towards the classical browser 
alternatively?


The release probably happens shortly after the start of the year -- I 
still don't see the details of the schedule.


As usual the general plan is to put things into shape, or disable things 
that are not in shape.  (I will make another round on Graphview pretty 
soon.)



Makarius___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


Re: [isabelle-dev] Hooks for postprocessing sessions!?

2012-10-11 Thread Makarius

On Thu, 11 Oct 2012, Lukas Bulwahn wrote:

this sounds similar to ideas that (Alex and) Lars had to allow 
find_theorems to search on all Isabelle sessions. As far as I know, they 
have an implementation for this feature in their shelf.


I was wondering about that recently.  So far the only visible result was 
an unclear status of find_theorems.ML (e.g. in Isabelle/e3945ddcb9aa). 
At some point I would like to see find_theorems.scala as well.



Concerning HTML processing and add ons: as a result of some changes due to 
the new build tool, there are still some loose ends.  I was considering 
more drasting renovations, like moving the functionality into 
Isabelle/Scala, but did not get very far.  I got stuck with WWW_Find and 
the question of its dependence on old HTML functionality, which is not 
immediately clear.


My present plan for the release was to put classic HTML generation just 
into the old form again, such that the index looks more ordered and the 
session information appears in the proper directories.  I also need to 
update the Admin scripts to produce the HTML library for release.



Makarius
___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


Re: [isabelle-dev] Graphview

2012-10-11 Thread Florian Haftmann
 The class_deps non-scalability probably stems from the omission of the
 transitive reduction (Hasse diagram).  This was probably done due to the
 anticipated locale graph visualization (which does not quite work), or
 it might be just an omission.

The latter.  I am not aware of any locale graph visualization apart from
a sketch two (?) years ago on the mailing list.

Florian

-- 

PGP available:
http://home.informatik.tu-muenchen.de/haftmann/pgp/florian_haftmann_at_informatik_tu_muenchen_de



signature.asc
Description: OpenPGP digital signature
___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


Re: [isabelle-dev] Hooks for postprocessing sessions!?

2012-10-11 Thread Lars Noschinski

On 11.10.2012 17:00, Makarius wrote:

On Thu, 11 Oct 2012, Lukas Bulwahn wrote:


this sounds similar to ideas that (Alex and) Lars had to allow
find_theorems to search on all Isabelle sessions. As far as I know,
they have an implementation for this feature in their shelf.


I was wondering about that recently. So far the only visible result was
an unclear status of find_theorems.ML (e.g. in Isabelle/e3945ddcb9aa).
At some point I would like to see find_theorems.scala as well.


I never got around to add the whole thing to the Isabelle repository. 
This is partly related to the fact, that I only have an hackish way to 
hook into the build process and generate the index. I always wanted to 
revisit this. I'll set it on my list for after the next paper deadline.


  -- Lars
___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


Re: [isabelle-dev] Graphview

2012-10-11 Thread Makarius

On Thu, 11 Oct 2012, Florian Haftmann wrote:


The class_deps non-scalability probably stems from the omission of the
transitive reduction (Hasse diagram).  This was probably done due to the
anticipated locale graph visualization (which does not quite work), or
it might be just an omission.


The latter.  I am not aware of any locale graph visualization apart from
a sketch two (?) years ago on the mailing list.


The result is called Graphview now.  The 'locale_deps' command will give 
you the locale aspect of it, but the result is not very usable at the 
moment.


A side question here: Is there a sensible way to make 'print_locale' 
informative about its axiomatic basis, or its view in terms of the goal 
presented in interpretation.


See also changeset 7b6aaf446496, where I trashed your earlier attempt at 
it without looking very closely at it -- the priority was to unify the 
pretty output / pretty tooltip model and get rid of hardwired locale 
content of the graphview tool.



Makarius
___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev


Re: [isabelle-dev] Hooks for postprocessing sessions!?

2012-10-11 Thread Makarius

On Thu, 11 Oct 2012, Lars Noschinski wrote:


On 11.10.2012 17:00, Makarius wrote:

On Thu, 11 Oct 2012, Lukas Bulwahn wrote:


this sounds similar to ideas that (Alex and) Lars had to allow
find_theorems to search on all Isabelle sessions. As far as I know,
they have an implementation for this feature in their shelf.


I was wondering about that recently. So far the only visible result was
an unclear status of find_theorems.ML (e.g. in Isabelle/e3945ddcb9aa).
At some point I would like to see find_theorems.scala as well.


I never got around to add the whole thing to the Isabelle repository. This is 
partly related to the fact, that I only have an hackish way to hook into the 
build process and generate the index. I always wanted to revisit this. I'll 
set it on my list for after the next paper deadline.


It would be also interesting to hear how the conceptual problems of 
off-line searching are addressed.  At the moment we have several partial 
online solutions.



The standard Isabelle document model -- the one being used in 
Isabelle/jEdit -- is more and more taking grounds from the old HTML stuff.
There is already a function to emit one bit XML document here: 
http://isabelle.in.tum.de/repos/isabelle/file/bb5db3d1d6dd/src/Pure/PIDE/document.scala#l477
There is another function to turn external XML into the internal markup 
tree.


The big conclusion of all this might be pretty close, but as I've said I 
got distracted by old ML sources around find_theorems / WWW_Find.  I don't 
expect anything on my side before the coming release, though.



Makarius
___
isabelle-dev mailing list
isabelle-...@in.tum.de
https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/isabelle-dev