ITP001 Axioms: ITP019+5.ax
%------------------------------------------------------------------------------
% File : ITP019+5 : TPTP v9.0.0. Bugfixed v7.5.0.
% Domain : Interactive Theorem Proving
% Axioms : HOL4 set theory export, chainy mode
% Version : [BG+19] axioms.
% English :
% Refs : [BG+19] Brown et al. (2019), GRUNGE: A Grand Unified ATP Chall
% : [Gau20] Gauthier (2020), Email to Geoff Sutcliffe
% Source : [BG+19]
% Names : while+2.ax [Gau20]
% : HL4019+5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 39 ( 3 unt; 0 def)
% Number of atoms : 211 ( 29 equ)
% Maximal formula atoms : 16 ( 5 avg)
% Number of connectives : 182 ( 10 ~; 0 |; 22 &)
% ( 5 <=>; 145 =>; 0 <=; 0 <~>)
% Maximal formula depth : 17 ( 8 avg)
% Maximal term depth : 8 ( 2 avg)
% Number of predicates : 4 ( 3 usr; 0 prp; 1-2 aty)
% Number of functors : 35 ( 35 usr; 12 con; 0-4 aty)
% Number of variables : 129 ( 125 !; 4 ?)
% SPC : FOF_SAT_RFO_SEQ
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
fof(mem_c_2Ewhile_2EHOARE__SPEC,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Ewhile_2EHOARE__SPEC(A_27a,A_27b),arr(arr(A_27a,bool),arr(arr(A_27a,A_27b),arr(arr(A_27b,bool),bool)))) ) ) ).
fof(mem_c_2Ewhile_2ELEAST,axiom,
mem(c_2Ewhile_2ELEAST,arr(arr(ty_2Enum_2Enum,bool),ty_2Enum_2Enum)) ).
fof(mem_c_2Ewhile_2EOLEAST,axiom,
mem(c_2Ewhile_2EOLEAST,arr(arr(ty_2Enum_2Enum,bool),ty_2Eoption_2Eoption(ty_2Enum_2Enum))) ).
fof(mem_c_2Ewhile_2EOWHILE,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2Ewhile_2EOWHILE(A_27a),arr(arr(A_27a,bool),arr(arr(A_27a,A_27a),arr(A_27a,ty_2Eoption_2Eoption(A_27a))))) ) ).
fof(mem_c_2Ewhile_2EWHILE,axiom,
! [A_27a] :
( ne(A_27a)
=> mem(c_2Ewhile_2EWHILE(A_27a),arr(arr(A_27a,bool),arr(arr(A_27a,A_27a),arr(A_27a,A_27a)))) ) ).
fof(conj_thm_2Ewhile_2EITERATION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0P] :
( mem(V0P,arr(A_27a,bool))
=> ! [V1g] :
( mem(V1g,arr(A_27a,A_27a))
=> ? [V2f] :
( mem(V2f,arr(A_27a,A_27a))
& ! [V3x] :
( mem(V3x,A_27a)
=> ap(V2f,V3x) = ap(ap(ap(c_2Ebool_2ECOND(A_27a),ap(V0P,V3x)),V3x),ap(V2f,ap(V1g,V3x))) ) ) ) ) ) ).
fof(ax_thm_2Ewhile_2EWHILE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0P] :
( mem(V0P,arr(A_27a,bool))
=> ! [V1g] :
( mem(V1g,arr(A_27a,A_27a))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ap(ap(ap(c_2Ewhile_2EWHILE(A_27a),V0P),V1g),V2x) = ap(ap(ap(c_2Ebool_2ECOND(A_27a),ap(V0P,V2x)),ap(ap(ap(c_2Ewhile_2EWHILE(A_27a),V0P),V1g),ap(V1g,V2x))),V2x) ) ) ) ) ).
fof(conj_thm_2Ewhile_2EWHILE__INDUCTION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0B] :
( mem(V0B,arr(A_27a,bool))
=> ! [V1C] :
( mem(V1C,arr(A_27a,A_27a))
=> ! [V2R] :
( mem(V2R,arr(A_27a,arr(A_27a,bool)))
=> ( ( p(ap(c_2Erelation_2EWF(A_27a),V2R))
& ! [V3s] :
( mem(V3s,A_27a)
=> ( p(ap(V0B,V3s))
=> p(ap(ap(V2R,ap(V1C,V3s)),V3s)) ) ) )
=> ! [V4P] :
( mem(V4P,arr(A_27a,bool))
=> ( ! [V5s] :
( mem(V5s,A_27a)
=> ( ( p(ap(V0B,V5s))
=> p(ap(V4P,ap(V1C,V5s))) )
=> p(ap(V4P,V5s)) ) )
=> ! [V6v] :
( mem(V6v,A_27a)
=> p(ap(V4P,V6v)) ) ) ) ) ) ) ) ) ).
fof(ax_thm_2Ewhile_2EHOARE__SPEC__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(A_27a,bool))
=> ! [V1C] :
( mem(V1C,arr(A_27a,A_27b))
=> ! [V2Q] :
( mem(V2Q,arr(A_27b,bool))
=> ( p(ap(ap(ap(c_2Ewhile_2EHOARE__SPEC(A_27a,A_27b),V0P),V1C),V2Q))
<=> ! [V3s] :
( mem(V3s,A_27a)
=> ( p(ap(V0P,V3s))
=> p(ap(V2Q,ap(V1C,V3s))) ) ) ) ) ) ) ) ) ).
fof(lameq_f186,axiom,
! [A_27a,V0P] :
( mem(V0P,arr(A_27a,bool))
=> ! [V2B] :
( mem(V2B,arr(A_27a,bool))
=> ! [V5s] : ap(f186(A_27a,V0P,V2B),V5s) = ap(ap(c_2Ebool_2E_2F_5C,ap(V0P,V5s)),ap(V2B,V5s)) ) ) ).
fof(lameq_f187,axiom,
! [A_27a,V0P] :
( mem(V0P,arr(A_27a,bool))
=> ! [V2B] :
( mem(V2B,arr(A_27a,bool))
=> ! [V6s] : ap(f187(A_27a,V0P,V2B),V6s) = ap(ap(c_2Ebool_2E_2F_5C,ap(V0P,V6s)),ap(c_2Ebool_2E_7E,ap(V2B,V6s))) ) ) ).
fof(conj_thm_2Ewhile_2EWHILE__RULE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0P] :
( mem(V0P,arr(A_27a,bool))
=> ! [V1R] :
( mem(V1R,arr(A_27a,arr(A_27a,bool)))
=> ! [V2B] :
( mem(V2B,arr(A_27a,bool))
=> ! [V3C] :
( mem(V3C,arr(A_27a,A_27a))
=> ( ( p(ap(c_2Erelation_2EWF(A_27a),V1R))
& ! [V4s] :
( mem(V4s,A_27a)
=> ( p(ap(V2B,V4s))
=> p(ap(ap(V1R,ap(V3C,V4s)),V4s)) ) ) )
=> ( p(ap(ap(ap(c_2Ewhile_2EHOARE__SPEC(A_27a,A_27a),f186(A_27a,V0P,V2B)),V3C),V0P))
=> p(ap(ap(ap(c_2Ewhile_2EHOARE__SPEC(A_27a,A_27a),V0P),ap(ap(c_2Ewhile_2EWHILE(A_27a),V2B),V3C)),f187(A_27a,V0P,V2B))) ) ) ) ) ) ) ) ).
fof(ax_thm_2Ewhile_2ELEAST__DEF,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,bool))
=> ap(c_2Ewhile_2ELEAST,V0P) = ap(ap(ap(c_2Ewhile_2EWHILE(ty_2Enum_2Enum),ap(ap(c_2Ecombin_2Eo(ty_2Enum_2Enum,bool,bool),c_2Ebool_2E_7E),V0P)),c_2Enum_2ESUC),c_2Enum_2E0) ) ).
fof(conj_thm_2Ewhile_2ELEAST__INTRO,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,bool))
=> ! [V1x] :
( mem(V1x,ty_2Enum_2Enum)
=> ( p(ap(V0P,V1x))
=> p(ap(V0P,ap(c_2Ewhile_2ELEAST,V0P))) ) ) ) ).
fof(conj_thm_2Ewhile_2ELESS__LEAST,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,bool))
=> ! [V1m] :
( mem(V1m,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,V1m),ap(c_2Ewhile_2ELEAST,V0P)))
=> ~ p(ap(V0P,V1m)) ) ) ) ).
fof(conj_thm_2Ewhile_2EFULL__LEAST__INTRO,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,bool))
=> ! [V1x] :
( mem(V1x,ty_2Enum_2Enum)
=> ( p(ap(V0P,V1x))
=> ( p(ap(V0P,ap(c_2Ewhile_2ELEAST,V0P)))
& p(ap(ap(c_2Earithmetic_2E_3C_3D,ap(c_2Ewhile_2ELEAST,V0P)),V1x)) ) ) ) ) ).
fof(conj_thm_2Ewhile_2ELEAST__ELIM,axiom,
! [V0Q] :
( mem(V0Q,arr(ty_2Enum_2Enum,bool))
=> ! [V1P] :
( mem(V1P,arr(ty_2Enum_2Enum,bool))
=> ( ( ? [V2n] :
( mem(V2n,ty_2Enum_2Enum)
& p(ap(V1P,V2n)) )
& ! [V3n] :
( mem(V3n,ty_2Enum_2Enum)
=> ( ( ! [V4m] :
( mem(V4m,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,V4m),V3n))
=> ~ p(ap(V1P,V4m)) ) )
& p(ap(V1P,V3n)) )
=> p(ap(V0Q,V3n)) ) ) )
=> p(ap(V0Q,ap(c_2Ewhile_2ELEAST,V1P))) ) ) ) ).
fof(conj_thm_2Ewhile_2ELEAST__EXISTS,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ( ? [V1n] :
( mem(V1n,ty_2Enum_2Enum)
& p(ap(V0p,V1n)) )
<=> ( p(ap(V0p,ap(c_2Ewhile_2ELEAST,V0p)))
& ! [V2n] :
( mem(V2n,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,V2n),ap(c_2Ewhile_2ELEAST,V0p)))
=> ~ p(ap(V0p,V2n)) ) ) ) ) ) ).
fof(conj_thm_2Ewhile_2ELEAST__EXISTS__IMP,axiom,
! [V0p] :
( mem(V0p,arr(ty_2Enum_2Enum,bool))
=> ( ? [V1n] :
( mem(V1n,ty_2Enum_2Enum)
& p(ap(V0p,V1n)) )
=> ( p(ap(V0p,ap(c_2Ewhile_2ELEAST,V0p)))
& ! [V2n] :
( mem(V2n,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,V2n),ap(c_2Ewhile_2ELEAST,V0p)))
=> ~ p(ap(V0p,V2n)) ) ) ) ) ) ).
fof(lameq_f188,axiom,
! [V0x] :
( mem(V0x,ty_2Enum_2Enum)
=> ! [V1n] : ap(f188(V0x),V1n) = ap(ap(c_2Emin_2E_3D(ty_2Enum_2Enum),V1n),V0x) ) ).
fof(lameq_f189,axiom,
! [V0x] :
( mem(V0x,ty_2Enum_2Enum)
=> ! [V2n] : ap(f189(V0x),V2n) = ap(ap(c_2Emin_2E_3D(ty_2Enum_2Enum),V0x),V2n) ) ).
fof(conj_thm_2Ewhile_2ELEAST__EQ,axiom,
! [V0x] :
( mem(V0x,ty_2Enum_2Enum)
=> ( ap(c_2Ewhile_2ELEAST,f188(V0x)) = V0x
& ap(c_2Ewhile_2ELEAST,f189(V0x)) = V0x ) ) ).
fof(conj_thm_2Ewhile_2ELEAST__T,axiom,
ap(c_2Ewhile_2ELEAST,k(ty_2Enum_2Enum,c_2Ebool_2ET)) = c_2Enum_2E0 ).
fof(lameq_f190,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,bool))
=> ! [V1n] : ap(f190(V0P),V1n) = ap(V0P,V1n) ) ).
fof(lameq_f191,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,bool))
=> ! [V2n] : ap(f191(V0P),V2n) = ap(V0P,V2n) ) ).
fof(ax_thm_2Ewhile_2EOLEAST__def,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,bool))
=> ap(c_2Ewhile_2EOLEAST,V0P) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(ty_2Enum_2Enum)),ap(c_2Ebool_2E_3F(ty_2Enum_2Enum),f190(V0P))),ap(c_2Eoption_2ESOME(ty_2Enum_2Enum),ap(c_2Ewhile_2ELEAST,f191(V0P)))),c_2Eoption_2ENONE(ty_2Enum_2Enum)) ) ).
fof(conj_thm_2Ewhile_2EOLEAST__INTRO,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,bool))
=> ! [V1Q] :
( mem(V1Q,arr(ty_2Eoption_2Eoption(ty_2Enum_2Enum),bool))
=> ( ( ( ! [V2n] :
( mem(V2n,ty_2Enum_2Enum)
=> ~ p(ap(V0P,V2n)) )
=> p(ap(V1Q,c_2Eoption_2ENONE(ty_2Enum_2Enum))) )
& ! [V3n] :
( mem(V3n,ty_2Enum_2Enum)
=> ( ( p(ap(V0P,V3n))
& ! [V4m] :
( mem(V4m,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,V4m),V3n))
=> ~ p(ap(V0P,V4m)) ) ) )
=> p(ap(V1Q,ap(c_2Eoption_2ESOME(ty_2Enum_2Enum),V3n))) ) ) )
=> p(ap(V1Q,ap(c_2Ewhile_2EOLEAST,V0P))) ) ) ) ).
fof(conj_thm_2Ewhile_2EOLEAST__EQNS,axiom,
! [V0x] :
( mem(V0x,ty_2Enum_2Enum)
=> ( ap(c_2Ewhile_2EOLEAST,f188(V0x)) = ap(c_2Eoption_2ESOME(ty_2Enum_2Enum),V0x)
& ap(c_2Ewhile_2EOLEAST,f189(V0x)) = ap(c_2Eoption_2ESOME(ty_2Enum_2Enum),V0x)
& ap(c_2Ewhile_2EOLEAST,k(ty_2Enum_2Enum,c_2Ebool_2EF)) = c_2Eoption_2ENONE(ty_2Enum_2Enum)
& ap(c_2Ewhile_2EOLEAST,k(ty_2Enum_2Enum,c_2Ebool_2ET)) = ap(c_2Eoption_2ESOME(ty_2Enum_2Enum),c_2Enum_2E0) ) ) ).
fof(conj_thm_2Ewhile_2EOLEAST__EQ__NONE,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,bool))
=> ( ap(c_2Ewhile_2EOLEAST,V0P) = c_2Eoption_2ENONE(ty_2Enum_2Enum)
<=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ~ p(ap(V0P,V1n)) ) ) ) ).
fof(conj_thm_2Ewhile_2EOLEAST__EQ__SOME,axiom,
! [V0P] :
( mem(V0P,arr(ty_2Enum_2Enum,bool))
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( ap(c_2Ewhile_2EOLEAST,V0P) = ap(c_2Eoption_2ESOME(ty_2Enum_2Enum),V1n)
<=> ( p(ap(V0P,V1n))
& ! [V2m] :
( mem(V2m,ty_2Enum_2Enum)
=> ( p(ap(ap(c_2Eprim__rec_2E_3C,V2m),V1n))
=> ~ p(ap(V0P,V2m)) ) ) ) ) ) ) ).
fof(lameq_f192,axiom,
! [A_27a,V0G] :
( mem(V0G,arr(A_27a,bool))
=> ! [V1f] :
( mem(V1f,arr(A_27a,A_27a))
=> ! [V2s] :
( mem(V2s,A_27a)
=> ! [V3n] : ap(f192(A_27a,V0G,V1f,V2s),V3n) = ap(c_2Ebool_2E_7E,ap(V0G,ap(ap(ap(c_2Earithmetic_2EFUNPOW(A_27a),V1f),V3n),V2s))) ) ) ) ).
fof(lameq_f193,axiom,
! [A_27a,V0G] :
( mem(V0G,arr(A_27a,bool))
=> ! [V1f] :
( mem(V1f,arr(A_27a,A_27a))
=> ! [V2s] :
( mem(V2s,A_27a)
=> ! [V4n] : ap(f193(A_27a,V0G,V1f,V2s),V4n) = ap(c_2Ebool_2E_7E,ap(V0G,ap(ap(ap(c_2Earithmetic_2EFUNPOW(A_27a),V1f),V4n),V2s))) ) ) ) ).
fof(ax_thm_2Ewhile_2EOWHILE__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0G] :
( mem(V0G,arr(A_27a,bool))
=> ! [V1f] :
( mem(V1f,arr(A_27a,A_27a))
=> ! [V2s] :
( mem(V2s,A_27a)
=> ap(ap(ap(c_2Ewhile_2EOWHILE(A_27a),V0G),V1f),V2s) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(A_27a)),ap(c_2Ebool_2E_3F(ty_2Enum_2Enum),f192(A_27a,V0G,V1f,V2s))),ap(c_2Eoption_2ESOME(A_27a),ap(ap(ap(c_2Earithmetic_2EFUNPOW(A_27a),V1f),ap(c_2Ewhile_2ELEAST,f193(A_27a,V0G,V1f,V2s))),V2s))),c_2Eoption_2ENONE(A_27a)) ) ) ) ) ).
fof(conj_thm_2Ewhile_2EOWHILE__THM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0G] :
( mem(V0G,arr(A_27a,bool))
=> ! [V1f] :
( mem(V1f,arr(A_27a,A_27a))
=> ! [V2s] :
( mem(V2s,A_27a)
=> ap(ap(ap(c_2Ewhile_2EOWHILE(A_27a),V0G),V1f),V2s) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(A_27a)),ap(V0G,V2s)),ap(ap(ap(c_2Ewhile_2EOWHILE(A_27a),V0G),V1f),ap(V1f,V2s))),ap(c_2Eoption_2ESOME(A_27a),V2s)) ) ) ) ) ).
fof(conj_thm_2Ewhile_2EOWHILE__EQ__NONE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0G] :
( mem(V0G,arr(A_27a,bool))
=> ! [V1f] :
( mem(V1f,arr(A_27a,A_27a))
=> ! [V2s] :
( mem(V2s,A_27a)
=> ( ap(ap(ap(c_2Ewhile_2EOWHILE(A_27a),V0G),V1f),V2s) = c_2Eoption_2ENONE(A_27a)
<=> ! [V3n] :
( mem(V3n,ty_2Enum_2Enum)
=> p(ap(V0G,ap(ap(ap(c_2Earithmetic_2EFUNPOW(A_27a),V1f),V3n),V2s))) ) ) ) ) ) ) ).
fof(conj_thm_2Ewhile_2EOWHILE__ENDCOND,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0G] :
( mem(V0G,arr(A_27a,bool))
=> ! [V1f] :
( mem(V1f,arr(A_27a,A_27a))
=> ! [V2s] :
( mem(V2s,A_27a)
=> ! [V3s_27] :
( mem(V3s_27,A_27a)
=> ( ap(ap(ap(c_2Ewhile_2EOWHILE(A_27a),V0G),V1f),V2s) = ap(c_2Eoption_2ESOME(A_27a),V3s_27)
=> ~ p(ap(V0G,V3s_27)) ) ) ) ) ) ) ).
fof(conj_thm_2Ewhile_2EOWHILE__WHILE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0G] :
( mem(V0G,arr(A_27a,bool))
=> ! [V1f] :
( mem(V1f,arr(A_27a,A_27a))
=> ! [V2s] :
( mem(V2s,A_27a)
=> ! [V3s_27] :
( mem(V3s_27,A_27a)
=> ( ap(ap(ap(c_2Ewhile_2EOWHILE(A_27a),V0G),V1f),V2s) = ap(c_2Eoption_2ESOME(A_27a),V3s_27)
=> ap(ap(ap(c_2Ewhile_2EWHILE(A_27a),V0G),V1f),V2s) = V3s_27 ) ) ) ) ) ) ).
fof(conj_thm_2Ewhile_2EOWHILE__INV__IND,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0P] :
( mem(V0P,arr(A_27a,bool))
=> ! [V1G] :
( mem(V1G,arr(A_27a,bool))
=> ! [V2f] :
( mem(V2f,arr(A_27a,A_27a))
=> ! [V3s] :
( mem(V3s,A_27a)
=> ( ( p(ap(V0P,V3s))
& ! [V4x] :
( mem(V4x,A_27a)
=> ( ( p(ap(V0P,V4x))
& p(ap(V1G,V4x)) )
=> p(ap(V0P,ap(V2f,V4x))) ) ) )
=> ! [V5s_27] :
( mem(V5s_27,A_27a)
=> ( ap(ap(ap(c_2Ewhile_2EOWHILE(A_27a),V1G),V2f),V3s) = ap(c_2Eoption_2ESOME(A_27a),V5s_27)
=> p(ap(V0P,V5s_27)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Ewhile_2EOWHILE__IND,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0P] :
( mem(V0P,arr(A_27a,arr(A_27a,bool)))
=> ! [V1G] :
( mem(V1G,arr(A_27a,bool))
=> ! [V2f] :
( mem(V2f,arr(A_27a,A_27a))
=> ( ( ! [V3s] :
( mem(V3s,A_27a)
=> ( ~ p(ap(V1G,V3s))
=> p(ap(ap(V0P,V3s),V3s)) ) )
& ! [V4s1] :
( mem(V4s1,A_27a)
=> ! [V5s2] :
( mem(V5s2,A_27a)
=> ( ( p(ap(V1G,V4s1))
& p(ap(ap(V0P,ap(V2f,V4s1)),V5s2)) )
=> p(ap(ap(V0P,V4s1),V5s2)) ) ) ) )
=> ! [V6s1] :
( mem(V6s1,A_27a)
=> ! [V7s2] :
( mem(V7s2,A_27a)
=> ( ap(ap(ap(c_2Ewhile_2EOWHILE(A_27a),V1G),V2f),V6s1) = ap(c_2Eoption_2ESOME(A_27a),V7s2)
=> p(ap(ap(V0P,V6s1),V7s2)) ) ) ) ) ) ) ) ) ).
%------------------------------------------------------------------------------