On Fri, 26 Aug 2011, Andreas Schropp wrote:

On 08/26/2011 07:08 PM, Brian Huffman wrote:
As far as I understand, the typedef package merely issues global
axioms of the form "type_definition Rep Abs S", as long as it is
provided with a proof of "EX x. x : S".


The global axiom is

 EX x. x : A ==> type_definition Rep Abs A

allowing local typedefs whenever non-emptiness of A is
derivable, even using assumptions in the context.

Yes, this is the key point. By digging further in the Mercurial history, you will see when I actually introduced it -- way before the "localized" typedef. (I am not digging myself, because I am not participating in this strange game of the seasion to generate workload by changing long-standing things arbitrarily.)

Whatever is done in Isabelle with sort constraints and the above conditional typedefs should be an instance of the loose type specifications according to A. Pitts in the HOL book from 1993.


This is not really a problem, but complicates my conservativity argument. Before local typedefs the proof of (EX x. x : A) was global. Actually Makarius' attitude on this was that those non-emptiness proofs "should be global most of the time", but he didn't want to introduce a check.

I don't understand this. Local typedefs are just a conjuring trick around plain old global ones (in the above presentation) -- no changes of the logical foundations here.


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

Reply via email to