Display formula terms
dt
dt(f)
with:
This command can be used after a logical analysis of formula la (see chapter 4.26 page §) and enables to display the value of the various terms of the analysed formula.
Given the following goal:
"‘REVERSE_RGE preconditions in this component’" & rng: minrge..maxrge & jj: 0..maxidx & ii: 0..maxidx & "‘Local hypotheses’" & kk$0: INTEGER & 0<=kk$0 & ll$0: INTEGER & 0<=ll$0 & ii<=kk$0 & ii<=jj => kk$0<=ll$0+1 & ll$0<=jj & kk$0+ll$0 = ii+jj & arr_rge$2 = arr_rge$1<+{rng|->(arr_rge$1(rng)<+%xx.(xx: ii..jj & (xx+1<=kk$0 or ll$0+1<=xx) | arr_rge$1(rng)(ii+jj-xx)))} & kk$0+1<=ll$0 & "‘Check preconditions of called operation, or While loop construction, or Assert predicates’" => ii<=kk$0+1
|
The formula logical analyser, performed by la command (see chapter 4.26 page §), breaks down the goal formula in:
PRI > la(2)
Parsing formula "‘REVERSE_RGE preconditions in this component’" & t.1: t.2 & t.3: t.4 & t.5: t.4 & "‘Local hypotheses’" & t.6: t.7 & t.8 <= t.6 & t.9: t.7 & t.8 <= t.9 & t.5 <= t.6 & (t.10=>t.11) & t.9 <= t.3 & t.12 = t.13 & t.14 = t.15 & t.16 <= t.9 & "‘Check preconditions of called operation, or While loop construction, or Assert predicates’" => t.5 <= t.16 End of analysis
|
Terms t.1 to t.16 can then be displayed by the dt command:
PRI > dt
t.1 is put for rng t.2 is put for minrge..maxrge t.3 is put for jj t.4 is put for 0..maxidx t.5 is put for ii t.6 is put for kk$0 t.7 is put for INTEGER t.8 is put for 0 t.9 is put for ll$0 t.10 is put for ii<=jj t.11 is put for kk$0<=ll$0+1 t.12 is put for kk$0+ll$0 t.13 is put for ii+jj t.14 is put for arr_rge$2 t.15 is put for arr_rge$1<+{rng|->(arr_rge$1(rng)<+%xx.(xx: ii..jj & (xx+1<=kk$0 or ll$0+1<=xx) | arr_rge$1(rng)(ii+jj-xx)))} t.16 is put for kk$0+1
|