@@ -459,10 +459,10 @@ QED
459
459
460
460
Theorem estep_to_Effi:
461
461
estep ea = Effi (ExtCall s) conf ws lnum env st cs ⇔
462
- ∃env' conf' fp'.
462
+ ∃env' conf' fp' b .
463
463
conf = MAP (λc. n2w (ORD c)) (EXPLODE conf') ∧
464
464
ea = (env',st,fp',Val (Litv (StrLit conf')),
465
- (Capp (FFI s) [Loc lnum] [],env)::cs) ∧
465
+ (Capp (FFI s) [Loc b lnum] [],env)::cs) ∧
466
466
store_lookup lnum st = SOME (W8array ws) ∧ s ≠ " "
467
467
Proof
468
468
PairCases_on `ea` >> Cases_on `ea3` >> gvs[SF itree_ss]
@@ -487,10 +487,10 @@ QED
487
487
Theorem dstep_to_Dffi:
488
488
dstep env dst dev dcs =
489
489
Dffi dst' (ExtCall s,ws1,ws2,lnum,env',cs) locs pat dcs' ⇔
490
- ∃env'' conf.
490
+ ∃env'' conf b .
491
491
dst = dst' ∧ dcs = dcs' ∧
492
492
dev = ExpVal env'' (Val (Litv (StrLit conf)))
493
- ((Capp (FFI s) [Loc lnum] [],env')::cs) locs pat ∧
493
+ ((Capp (FFI s) [Loc b lnum] [],env')::cs) locs pat ∧
494
494
ws1 = MAP (λc. n2w (ORD c)) (EXPLODE conf) ∧
495
495
store_lookup lnum dst.refs = SOME (W8array ws2) ∧ s ≠ " "
496
496
Proof
@@ -513,9 +513,9 @@ Theorem decl_step_ffi_changed_dstep_to_Dffi:
513
513
decl_step env (dst2, dev2, dcs) = Dstep (dst2', dev2', dcs') ∧
514
514
dst2.ffi ≠ dst2'.ffi ∧
515
515
dstate_rel dst1 dst2 ∧ deval_rel dev1 dev2 ⇒
516
- ∃env' env'' conf s lnum ccs locs pat ws.
516
+ ∃env' env'' conf s lnum ccs locs pat ws b .
517
517
dev1 = ExpVal env' (Val $ Litv $ StrLit conf)
518
- ((Capp (FFI s) [Loc lnum] [], env'') :: ccs) locs pat ∧
518
+ ((Capp (FFI s) [Loc b lnum] [], env'') :: ccs) locs pat ∧
519
519
store_lookup lnum dst1.refs = SOME (W8array ws) ∧
520
520
dstep env dst1 dev1 dcs = Dffi dst1
521
521
(ExtCall s,MAP (λc. n2w $ ORD c) (EXPLODE conf),ws,lnum,env'',ccs)
@@ -578,12 +578,12 @@ Theorem dstep_result_rel_single_FFI_strong:
578
578
dstep_result_rel (Dstep dsta deva dcsa) (Dstep (dstb, devb, dcsb)) ∧
579
579
dstep env dsta deva dcsa =
580
580
Dffi dsta' (ExtCall s,conf,ws,lnum,eenv,cs1) locs pat dcsa'
581
- ⇒ ∃env' ffi conf' cs2 fp.
581
+ ⇒ ∃env' ffi conf' cs2 fp b .
582
582
conf = MAP (λc. n2w (ORD c)) (EXPLODE conf') ∧
583
583
deva = ExpVal env' (Val (Litv $ StrLit conf'))
584
- ((Capp (FFI s) [Loc lnum] [], eenv)::cs1) locs pat ∧
584
+ ((Capp (FFI s) [Loc b lnum] [], eenv)::cs1) locs pat ∧
585
585
devb = ExpVal env' (Val (Litv $ StrLit conf'))
586
- ((Capp (FFI s) [Loc lnum] () [], eenv)::cs2) locs pat ∧
586
+ ((Capp (FFI s) [Loc b lnum] () [], eenv)::cs2) locs pat ∧
587
587
store_lookup lnum dsta.refs = SOME (W8array ws) ∧ s ≠ " " ∧
588
588
dget_ffi (Dstep (dstb, devb, dcsb)) = SOME ffi ∧
589
589
decl_step env (dstb, devb, dcsb) =
0 commit comments