src/HOL/Lex/RegSet.ML
author paulson
Fri, 21 Apr 2000 11:28:18 +0200
changeset 8756 b03a0b219139
parent 6162 484adda70b65
permissions -rw-r--r--
new file Integ/NatSimprocs.ML
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4832
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
     1
(*  Title:      HOL/Lex/RegSet.ML
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
     2
    ID:         $Id$
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
     3
    Author:     Tobias Nipkow
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
     4
    Copyright   1998 TUM
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
     5
*)
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
     6
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
     7
AddIffs [star.NilI];
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
     8
Addsimps [star.ConsI];
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
     9
AddIs [star.ConsI];
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    10
5069
3ea049f7979d isatool fixgoal;
wenzelm
parents: 4832
diff changeset
    11
Goal "(!xs: set xss. xs:S) --> concat xss : star S";
4832
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    12
by (induct_tac "xss" 1);
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    13
by (ALLGOALS Asm_full_simp_tac);
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    14
qed_spec_mp "concat_in_star";
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    15
5069
3ea049f7979d isatool fixgoal;
wenzelm
parents: 4832
diff changeset
    16
Goal
4832
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    17
 "w : star U = (? us. (!u : set(us). u : U) & (w = concat us))";
5132
24f992a25adc isatool expandshort;
wenzelm
parents: 5069
diff changeset
    18
by (rtac iffI 1);
6162
484adda70b65 expandshort
paulson
parents: 5132
diff changeset
    19
 by (etac star.induct 1);
4832
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    20
  by (res_inst_tac [("x","[]")] exI 1);
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    21
  by (Simp_tac 1);
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    22
 by (Clarify_tac 1);
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    23
 by (res_inst_tac [("x","a#us")] exI 1);
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    24
 by (Asm_simp_tac 1);
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    25
by (Clarify_tac 1);
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    26
by (asm_simp_tac (simpset() addsimps [concat_in_star]) 1);
bc11b5b06f87 Added conversion of reg.expr. to automata.
nipkow
parents:
diff changeset
    27
qed "in_star";