src/HOL/Lex/DA.thy
author kleing
Mon, 15 Oct 2001 21:04:32 +0200
changeset 11787 85b3735a51e1
parent 8732 aef229ca5e77
child 14428 bb2b0e10d9be
permissions -rw-r--r--
canonical 'cases'/'induct' rules for n-tuples (n=3..7) (really belongs to theory Product_Type, but doesn't work there yet)

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

Deterministic automata
*)

DA = AutoProj +

types ('a,'s)da = "'s * ('a => 's => 's) * ('s => bool)"

constdefs
 foldl2 :: ('a => 'b => 'b) => 'a list => 'b => 'b
"foldl2 f xs a == foldl (%a b. f b a) a xs"

 delta :: ('a,'s)da => 'a list => 's => 's
"delta A == foldl2 (next A)"

 accepts ::  ('a,'s)da => 'a list => bool
"accepts A == %w. fin A (delta A w (start A))"

end