At:
vc trace correctness132
1.
A: ioa{i:l}()
2.
I: Fmla
3.
rho: Decl
4.
de: sig()
5.
e: {[[de]] rho}
6.
te: LabelLabel
7.
tc_ioa(A;de)
8.
ioa_mentions_trace(A)
9.
trace_consistent_pred(rho;A.da;te;I)
10.
guarded_trace(A.da;te;I)
11.
tc_pred(I;A.ds; < > ;de)
12.
covers_pred(A;I)
13.
closed_pred(I)
14.
single_valued_decls(A.ds)
15.
s:[[A]] rho de e.state, tr:([[A.da]] rho) List.
([[A]] rho de e -tr- > s) [[VCs(A;I)]] rho A.ds A.da de e s mk_trace_env(tr, te)
16.
s0: [[A]] rho de e.state
17.
x: [[A]] rho de e.state
18.
act: [[A]] rho de e.action
19.
x': [[A]] rho de e.state
20.
l: [[A]] rho de e.action List
21.
[[A]] rho de e.init(s0)
22.
trace_reachable([[A]] rho de e;s0;l;x)
23.
mk_trace_env(l, te) trace_env([[A.da]] rho)
[[I]] rho A.ds < > de e x mk_trace_env(l, te) [[A]] rho de e.trans(x,act,x') [[I]] rho A.ds < > de e x' mk_trace_env(l @ [act], te)
By:
Auto
THEN
Reduce 0
THEN
TrivialIoaHyp
Generated subgoals: