src/HOL/Lex/AutoProj.thy
author wenzelm
Wed, 01 Jul 1998 11:20:32 +0200
changeset 5104 230cca8452c7
parent 4832 bc11b5b06f87
child 8732 aef229ca5e77
permissions -rw-r--r--
added add_typedecls;

(*  Title:      HOL/Lex/AutoProj.thy
    ID:         $Id$
    Author:     Tobias Nipkow
    Copyright   1998 TUM

Is there an optimal order of arguments for `next'?
Currently we can have laws like `delta A (a#w) = delta A w o delta A a'
Otherwise we could have `acceps A == fin A o delta A (start A)'
and use foldl instead of foldl2.
*)

AutoProj = Prod +

constdefs
 start :: "'a * 'b * 'c => 'a"
"start A == fst A"
 next :: "'a * 'b * 'c => 'b"
"next A == fst(snd(A))"
 fin :: "'a * 'b * 'c => 'c"
"fin A == snd(snd(A))"

end