| 4832 |      1 | (*  Title:      HOL/Lex/DA.thy
 | 
|  |      2 |     ID:         $Id$
 | 
|  |      3 |     Author:     Tobias Nipkow
 | 
|  |      4 |     Copyright   1998 TUM
 | 
|  |      5 | 
 | 
|  |      6 | Deterministic automata
 | 
|  |      7 | *)
 | 
|  |      8 | 
 | 
| 8732 |      9 | DA = AutoProj +
 | 
| 4832 |     10 | 
 | 
|  |     11 | types ('a,'s)da = "'s * ('a => 's => 's) * ('s => bool)"
 | 
|  |     12 | 
 | 
|  |     13 | constdefs
 | 
|  |     14 |  foldl2 :: ('a => 'b => 'b) => 'a list => 'b => 'b
 | 
|  |     15 | "foldl2 f xs a == foldl (%a b. f b a) a xs"
 | 
|  |     16 | 
 | 
|  |     17 |  delta :: ('a,'s)da => 'a list => 's => 's
 | 
|  |     18 | "delta A == foldl2 (next A)"
 | 
|  |     19 | 
 | 
|  |     20 |  accepts ::  ('a,'s)da => 'a list => bool
 | 
|  |     21 | "accepts A == %w. fin A (delta A w (start A))"
 | 
|  |     22 | 
 | 
|  |     23 | end
 |