src/HOLCF/IOA/meta_theory/TLS.ML
changeset 10835 f4745d77e620
parent 9385 6e1ac1629ac7
child 12218 6597093b77e7
equal deleted inserted replaced
10834:a7897aebbffc 10835:f4745d77e620
    18 (* ---------------------------------------------------------------- *)
    18 (* ---------------------------------------------------------------- *)
    19 
    19 
    20 Goal "ex2seqC  = (LAM ex. (%s. case ex of \
    20 Goal "ex2seqC  = (LAM ex. (%s. case ex of \
    21 \      nil =>  (s,None,s)>>nil   \
    21 \      nil =>  (s,None,s)>>nil   \
    22 \    | x##xs => (flift1 (%pr. \
    22 \    | x##xs => (flift1 (%pr. \
    23 \                (s,Some (fst pr), snd pr)>> (ex2seqC`xs) (snd pr))  \
    23 \                (s,Some (fst pr), snd pr)>> (ex2seqC$xs) (snd pr))  \
    24 \                `x)  \
    24 \                $x)  \
    25 \      ))";
    25 \      ))";
    26 by (rtac trans 1);
    26 by (rtac trans 1);
    27 by (rtac fix_eq2 1);
    27 by (rtac fix_eq2 1);
    28 by (rtac ex2seqC_def 1);
    28 by (rtac ex2seqC_def 1);
    29 by (rtac beta_cfun 1);
    29 by (rtac beta_cfun 1);
    30 by (simp_tac (simpset() addsimps [flift1_def]) 1);
    30 by (simp_tac (simpset() addsimps [flift1_def]) 1);
    31 qed"ex2seqC_unfold";
    31 qed"ex2seqC_unfold";
    32 
    32 
    33 Goal "(ex2seqC `UU) s=UU";
    33 Goal "(ex2seqC $UU) s=UU";
    34 by (stac ex2seqC_unfold 1);
    34 by (stac ex2seqC_unfold 1);
    35 by (Simp_tac 1);
    35 by (Simp_tac 1);
    36 qed"ex2seqC_UU";
    36 qed"ex2seqC_UU";
    37 
    37 
    38 Goal "(ex2seqC `nil) s = (s,None,s)>>nil";
    38 Goal "(ex2seqC $nil) s = (s,None,s)>>nil";
    39 by (stac ex2seqC_unfold 1);
    39 by (stac ex2seqC_unfold 1);
    40 by (Simp_tac 1);
    40 by (Simp_tac 1);
    41 qed"ex2seqC_nil";
    41 qed"ex2seqC_nil";
    42 
    42 
    43 Goal "(ex2seqC `((a,t)>>xs)) s = \
    43 Goal "(ex2seqC $((a,t)>>xs)) s = \
    44 \          (s,Some a,t)>> ((ex2seqC`xs) t)";
    44 \          (s,Some a,t)>> ((ex2seqC$xs) t)";
    45 by (rtac trans 1);
    45 by (rtac trans 1);
    46 by (stac ex2seqC_unfold 1);
    46 by (stac ex2seqC_unfold 1);
    47 by (asm_full_simp_tac (simpset() addsimps [Consq_def,flift1_def]) 1);
    47 by (asm_full_simp_tac (simpset() addsimps [Consq_def,flift1_def]) 1);
    48 by (asm_full_simp_tac (simpset() addsimps [Consq_def,flift1_def]) 1);
    48 by (asm_full_simp_tac (simpset() addsimps [Consq_def,flift1_def]) 1);
    49 qed"ex2seqC_cons";
    49 qed"ex2seqC_cons";