ITP001 Axioms: ITP081+5.ax
%------------------------------------------------------------------------------
% File : ITP081+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 : alist+2.ax [Gau20]
% : HL4081+5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 82 ( 2 unt; 0 def)
% Number of atoms : 446 ( 91 equ)
% Maximal formula atoms : 15 ( 5 avg)
% Number of connectives : 367 ( 3 ~; 0 |; 16 &)
% ( 6 <=>; 342 =>; 0 <=; 0 <~>)
% Maximal formula depth : 22 ( 10 avg)
% Maximal term depth : 10 ( 2 avg)
% Number of predicates : 4 ( 3 usr; 0 prp; 1-2 aty)
% Number of functors : 84 ( 84 usr; 4 con; 0-7 aty)
% Number of variables : 382 ( 382 !; 0 ?)
% SPC : FOF_SAT_RFO_SEQ
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
fof(mem_c_2Ealist_2EALOOKUP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Ealist_2EALOOKUP(A_27a,A_27b),arr(ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)),arr(A_27b,ty_2Eoption_2Eoption(A_27a)))) ) ) ).
fof(mem_c_2Ealist_2Ealist__range,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Ealist_2Ealist__range(A_27a,A_27b),arr(ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)),arr(A_27a,bool))) ) ) ).
fof(mem_c_2Ealist_2Ealist__to__fmap,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),arr(ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)),ty_2Efinite__map_2Efmap(A_27a,A_27b))) ) ) ).
fof(mem_c_2Ealist_2Efmap__to__alist,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))) ) ) ).
fof(lameq_f2095,axiom,
! [A_27b,A_27a,V0s] :
( mem(V0s,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] : ap(f2095(A_27b,A_27a,V0s),V1k) = ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0s),V1k)) ) ).
fof(ax_thm_2Ealist_2Efmap__to__alist__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0s] :
( mem(V0s,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V0s) = ap(ap(c_2Elist_2EMAP(A_27a,ty_2Epair_2Eprod(A_27a,A_27b)),f2095(A_27b,A_27a,V0s)),ap(c_2Elist_2ESET__TO__LIST(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0s))) ) ) ) ).
fof(conj_thm_2Ealist_2Efmap__to__alist__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)) = c_2Elist_2ENIL(ty_2Epair_2Eprod(A_27a,A_27b)) ) ) ).
fof(lameq_f2096,axiom,
! [A_27a,A_27b,V2v] :
( mem(V2v,A_27b)
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V3f] : ap(f2096(A_27a,A_27b,V2v,V1k),V3f) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V3f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V2v)) ) ) ).
fof(lameq_f2097,axiom,
! [A_27a,A_27b,V1k] :
( mem(V1k,A_27a)
=> ! [V2v] : ap(f2097(A_27a,A_27b,V1k),V2v) = f2096(A_27a,A_27b,V2v,V1k) ) ).
fof(lameq_f2098,axiom,
! [A_27b,A_27a,V1k] : ap(f2098(A_27b,A_27a),V1k) = f2097(A_27a,A_27b,V1k) ).
fof(ax_thm_2Ealist_2Ealist__to__fmap__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0s] :
( mem(V0s,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V0s) = ap(ap(ap(c_2Elist_2EFOLDR(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Efinite__map_2Efmap(A_27a,A_27b)),ap(c_2Epair_2EUNCURRY(A_27a,A_27b,arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),ty_2Efinite__map_2Efmap(A_27a,A_27b))),f2098(A_27b,A_27a))),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V0s) ) ) ) ).
fof(conj_thm_2Ealist_2Ealist__to__fmap__thm,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [A_27d] :
( ne(A_27d)
=> ! [V0k] :
( mem(V0k,A_27c)
=> ! [V1v] :
( mem(V1v,A_27d)
=> ! [V2t] :
( mem(V2t,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27c,A_27d)))
=> ( ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),c_2Elist_2ENIL(ty_2Epair_2Eprod(A_27a,A_27b))) = c_2Efinite__map_2EFEMPTY(A_27a,A_27b)
& ap(c_2Ealist_2Ealist__to__fmap(A_27c,A_27d),ap(ap(c_2Elist_2ECONS(ty_2Epair_2Eprod(A_27c,A_27d)),ap(ap(c_2Epair_2E_2C(A_27c,A_27d),V0k),V1v)),V2t)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27c,A_27d),ap(c_2Ealist_2Ealist__to__fmap(A_27c,A_27d),V2t)),ap(ap(c_2Epair_2E_2C(A_27c,A_27d),V0k),V1v)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__ind,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)),arr(A_27b,bool)))
=> ( ( ! [V1q] :
( mem(V1q,A_27b)
=> p(ap(ap(V0P,c_2Elist_2ENIL(ty_2Epair_2Eprod(A_27b,A_27a))),V1q)) )
& ! [V2x] :
( mem(V2x,A_27b)
=> ! [V3y] :
( mem(V3y,A_27a)
=> ! [V4t] :
( mem(V4t,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> ! [V5q] :
( mem(V5q,A_27b)
=> ( ( V2x != V5q
=> p(ap(ap(V0P,V4t),V5q)) )
=> p(ap(ap(V0P,ap(ap(c_2Elist_2ECONS(ty_2Epair_2Eprod(A_27b,A_27a)),ap(ap(c_2Epair_2E_2C(A_27b,A_27a),V2x),V3y)),V4t)),V5q)) ) ) ) ) ) )
=> ! [V6v] :
( mem(V6v,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> ! [V7v1] :
( mem(V7v1,A_27b)
=> p(ap(ap(V0P,V6v),V7v1)) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ( ! [V0q] :
( mem(V0q,A_27b)
=> ap(ap(c_2Ealist_2EALOOKUP(A_27a,A_27b),c_2Elist_2ENIL(ty_2Epair_2Eprod(A_27b,A_27a))),V0q) = c_2Eoption_2ENONE(A_27a) )
& ! [V1y] :
( mem(V1y,A_27a)
=> ! [V2x] :
( mem(V2x,A_27b)
=> ! [V3t] :
( mem(V3t,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> ! [V4q] :
( mem(V4q,A_27b)
=> ap(ap(c_2Ealist_2EALOOKUP(A_27a,A_27b),ap(ap(c_2Elist_2ECONS(ty_2Epair_2Eprod(A_27b,A_27a)),ap(ap(c_2Epair_2E_2C(A_27b,A_27a),V2x),V1y)),V3t)),V4q) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(A_27a)),ap(ap(c_2Emin_2E_3D(A_27b),V2x),V4q)),ap(c_2Eoption_2ESOME(A_27a),V1y)),ap(ap(c_2Ealist_2EALOOKUP(A_27a,A_27b),V3t),V4q)) ) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__FAILS,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0l] :
( mem(V0l,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> ! [V1x] :
( mem(V1x,A_27b)
=> ( ap(ap(c_2Ealist_2EALOOKUP(A_27a,A_27b),V0l),V1x) = c_2Eoption_2ENONE(A_27a)
<=> ! [V2k] :
( mem(V2k,A_27b)
=> ! [V3v] :
( mem(V3v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(ty_2Epair_2Eprod(A_27b,A_27a)),ap(ap(c_2Epair_2E_2C(A_27b,A_27a),V2k),V3v)),ap(c_2Elist_2ELIST__TO__SET(ty_2Epair_2Eprod(A_27b,A_27a)),V0l)))
=> V2k != V1x ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__NONE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0l] :
( mem(V0l,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ( ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0l),V1x) = c_2Eoption_2ENONE(A_27b)
<=> ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V1x),ap(c_2Elist_2ELIST__TO__SET(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0l)))) ) ) ) ) ) ).
fof(lameq_f2099,axiom,
! [A_27b,A_27a,V2f] :
( mem(V2f,arr(A_27a,A_27b))
=> ! [V3k] : ap(f2099(A_27b,A_27a,V2f),V3k) = ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3k),ap(V2f,V3k)) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__TABULATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0x] :
( mem(V0x,A_27a)
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(A_27a))
=> ! [V2f] :
( mem(V2f,arr(A_27a,A_27b))
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V0x),ap(c_2Elist_2ELIST__TO__SET(A_27a),V1l)))
=> ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),ap(ap(c_2Elist_2EMAP(A_27a,ty_2Epair_2Eprod(A_27a,A_27b)),f2099(A_27b,A_27a,V2f)),V1l)),V0x) = ap(c_2Eoption_2ESOME(A_27b),ap(V2f,V0x)) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__EQ__FLOOKUP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [A_27d] :
( ne(A_27d)
=> ! [V0al] :
( mem(V0al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27c,A_27d))
=> ( ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V0al)) = ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0al)
& ap(c_2Ealist_2EALOOKUP(A_27d,A_27c),ap(c_2Ealist_2Efmap__to__alist(A_27c,A_27d),V1fm)) = ap(c_2Efinite__map_2EFLOOKUP(A_27c,A_27d),V1fm) ) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EMEM__fmap__to__alist,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0x] :
( mem(V0x,A_27a)
=> ! [V1y] :
( mem(V1y,A_27b)
=> ! [V2fm] :
( mem(V2fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Ebool_2EIN(ty_2Epair_2Eprod(A_27a,A_27b)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V0x),V1y)),ap(c_2Elist_2ELIST__TO__SET(ty_2Epair_2Eprod(A_27a,A_27b)),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V2fm))))
<=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V0x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V2fm)))
& ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V2fm),V0x) = V1y ) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EMEM__fmap__to__alist__FLOOKUP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0p] :
( mem(V0p,ty_2Epair_2Eprod(A_27a,A_27b))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Ebool_2EIN(ty_2Epair_2Eprod(A_27a,A_27b)),V0p),ap(c_2Elist_2ELIST__TO__SET(ty_2Epair_2Eprod(A_27a,A_27b)),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V1fm))))
<=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V1fm),ap(c_2Epair_2EFST(A_27a,A_27b),V0p)) = ap(c_2Eoption_2ESOME(A_27b),ap(c_2Epair_2ESND(A_27a,A_27b),V0p)) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EMEM__pair__fmap__to__alist__FLOOKUP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0x] :
( mem(V0x,A_27a)
=> ! [V1y] :
( mem(V1y,A_27b)
=> ! [V2fm] :
( mem(V2fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Ebool_2EIN(ty_2Epair_2Eprod(A_27a,A_27b)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V0x),V1y)),ap(c_2Elist_2ELIST__TO__SET(ty_2Epair_2Eprod(A_27a,A_27b)),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V2fm))))
<=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V2fm),V0x) = ap(c_2Eoption_2ESOME(A_27b),V1y) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2ELENGTH__fmap__to__alist,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(c_2Elist_2ELENGTH(ty_2Epair_2Eprod(A_27a,A_27b)),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V0fm)) = ap(c_2Epred__set_2ECARD(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0fm)) ) ) ) ).
fof(conj_thm_2Ealist_2Efmap__to__alist__to__fmap,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V0fm)) = V0fm ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__MEM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0al] :
( mem(V0al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V2v] :
( mem(V2v,A_27b)
=> ( ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0al),V1k) = ap(c_2Eoption_2ESOME(A_27b),V2v)
=> p(ap(ap(c_2Ebool_2EIN(ty_2Epair_2Eprod(A_27a,A_27b)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V2v)),ap(c_2Elist_2ELIST__TO__SET(ty_2Epair_2Eprod(A_27a,A_27b)),V0al))) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__SOME__FAPPLY__alist__to__fmap,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0al] :
( mem(V0al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V2v] :
( mem(V2v,A_27b)
=> ( ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0al),V1k) = ap(c_2Eoption_2ESOME(A_27b),V2v)
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V0al)),V1k) = V2v ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2Ealist__to__fmap__FAPPLY__MEM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0al] :
( mem(V0al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1z] :
( mem(V1z,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V1z),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V0al))))
=> p(ap(ap(c_2Ebool_2EIN(ty_2Epair_2Eprod(A_27a,A_27b)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1z),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V0al)),V1z))),ap(c_2Elist_2ELIST__TO__SET(ty_2Epair_2Eprod(A_27a,A_27b)),V0al))) ) ) ) ) ) ).
fof(lameq_f2100,axiom,
! [A_27b,A_27c,A_27a,V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ! [V2x] :
( mem(V2x,A_27c)
=> ! [V3y] : ap(f2100(A_27b,A_27c,A_27a,V0f,V2x),V3y) = ap(ap(c_2Epair_2E_2C(A_27c,A_27b),V2x),ap(V0f,V3y)) ) ) ).
fof(lameq_f2101,axiom,
! [A_27a,A_27b,A_27c,V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ! [V2x] : ap(f2101(A_27a,A_27b,A_27c,V0f),V2x) = f2100(A_27b,A_27c,A_27a,V0f,V2x) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__MAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ! [V1al] :
( mem(V1al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27c,A_27a)))
=> ap(c_2Ealist_2EALOOKUP(A_27b,A_27c),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27c,A_27a),ty_2Epair_2Eprod(A_27c,A_27b)),ap(c_2Epair_2EUNCURRY(A_27c,A_27a,ty_2Epair_2Eprod(A_27c,A_27b)),f2101(A_27a,A_27b,A_27c,V0f))),V1al)) = ap(ap(c_2Ecombin_2Eo(A_27c,ty_2Eoption_2Eoption(A_27b),ty_2Eoption_2Eoption(A_27a)),ap(c_2Eoption_2EOPTION__MAP(A_27a,A_27b),V0f)),ap(c_2Ealist_2EALOOKUP(A_27a,A_27c),V1al)) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EFDOM__alist__to__fmap,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0al] :
( mem(V0al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V0al)) = ap(c_2Elist_2ELIST__TO__SET(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0al)) ) ) ) ).
fof(conj_thm_2Ealist_2Ealist__to__fmap__prefix,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls] :
( mem(V0ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1l1] :
( mem(V1l1,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V2l2] :
( mem(V2l2,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ( ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V1l1) = ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V2l2)
=> ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),ap(ap(c_2Elist_2EAPPEND(ty_2Epair_2Eprod(A_27a,A_27b)),V0ls),V1l1)) = ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),ap(ap(c_2Elist_2EAPPEND(ty_2Epair_2Eprod(A_27a,A_27b)),V0ls),V2l2)) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2Ealist__to__fmap__APPEND,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0l1] :
( mem(V0l1,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1l2] :
( mem(V1l2,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),ap(ap(c_2Elist_2EAPPEND(ty_2Epair_2Eprod(A_27a,A_27b)),V0l1),V1l2)) = ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V0l1)),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V1l2)) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__prefix,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0v] :
( mem(V0v,A_27b)
=> ! [V1ls] :
( mem(V1ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3ls2] :
( mem(V3ls2,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ( ( ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V1ls),V2k) = ap(c_2Eoption_2ESOME(A_27b),V0v)
=> ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),ap(ap(c_2Elist_2EAPPEND(ty_2Epair_2Eprod(A_27a,A_27b)),V1ls),V3ls2)),V2k) = ap(c_2Eoption_2ESOME(A_27b),V0v) )
& ( ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V1ls),V2k) = c_2Eoption_2ENONE(A_27b)
=> ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),ap(ap(c_2Elist_2EAPPEND(ty_2Epair_2Eprod(A_27a,A_27b)),V1ls),V3ls2)),V2k) = ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V3ls2),V2k) ) ) ) ) ) ) ) ) ).
fof(lameq_f2102,axiom,
! [A_27b,V3v] : ap(f2102(A_27b),V3v) = ap(c_2Eoption_2ESOME(A_27b),V3v) ).
fof(conj_thm_2Ealist_2EALOOKUP__APPEND,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0l1] :
( mem(V0l1,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1l2] :
( mem(V1l2,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),ap(ap(c_2Elist_2EAPPEND(ty_2Epair_2Eprod(A_27a,A_27b)),V0l1),V1l2)),V2k) = ap(ap(ap(c_2Eoption_2Eoption__CASE(A_27b,ty_2Eoption_2Eoption(A_27b)),ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0l1),V2k)),ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V1l2),V2k)),f2102(A_27b)) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EFUPDATE__LIST__EQ__APPEND__REVERSE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls] :
( mem(V0ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1fm),V0ls) = ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),ap(ap(c_2Elist_2EAPPEND(ty_2Epair_2Eprod(A_27a,A_27b)),ap(c_2Elist_2EREVERSE(ty_2Epair_2Eprod(A_27a,A_27b)),V0ls)),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V1fm))) ) ) ) ) ).
fof(conj_thm_2Ealist_2EFLOOKUP__FUPDATE__LIST__ALOOKUP__SOME,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls] :
( mem(V0ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> ! [V1k] :
( mem(V1k,A_27b)
=> ! [V2v] :
( mem(V2v,A_27a)
=> ! [V3fm] :
( mem(V3fm,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ( ap(ap(c_2Ealist_2EALOOKUP(A_27a,A_27b),V0ls),V1k) = ap(c_2Eoption_2ESOME(A_27a),V2v)
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27a),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27b,A_27a),V3fm),ap(c_2Elist_2EREVERSE(ty_2Epair_2Eprod(A_27b,A_27a)),V0ls))),V1k) = ap(c_2Eoption_2ESOME(A_27a),V2v) ) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EFLOOKUP__FUPDATE__LIST__ALOOKUP__NONE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls] :
( mem(V0ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> ! [V1k] :
( mem(V1k,A_27b)
=> ! [V2fm] :
( mem(V2fm,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ( ap(ap(c_2Ealist_2EALOOKUP(A_27a,A_27b),V0ls),V1k) = c_2Eoption_2ENONE(A_27a)
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27a),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27b,A_27a),V2fm),ap(c_2Elist_2EREVERSE(ty_2Epair_2Eprod(A_27b,A_27a)),V0ls))),V1k) = ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27a),V2fm),V1k) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EFUNION__alist__to__fmap,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls] :
( mem(V0ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V0ls)),V1fm) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1fm),ap(c_2Elist_2EREVERSE(ty_2Epair_2Eprod(A_27a,A_27b)),V0ls)) ) ) ) ) ).
fof(lameq_f2103,axiom,
! [A_27d,A_27b,A_27a,A_27c,V0f1] :
( mem(V0f1,arr(A_27a,A_27b))
=> ! [V3x] :
( mem(V3x,A_27a)
=> ! [V1f2] :
( mem(V1f2,arr(A_27c,A_27d))
=> ! [V4y] : ap(f2103(A_27d,A_27b,A_27a,A_27c,V0f1,V3x,V1f2),V4y) = ap(ap(c_2Epair_2E_2C(A_27b,A_27d),ap(V0f1,V3x)),ap(V1f2,V4y)) ) ) ) ).
fof(lameq_f2104,axiom,
! [A_27c,A_27b,A_27d,A_27a,V0f1] :
( mem(V0f1,arr(A_27a,A_27b))
=> ! [V1f2] :
( mem(V1f2,arr(A_27c,A_27d))
=> ! [V3x] : ap(f2104(A_27c,A_27b,A_27d,A_27a,V0f1,V1f2),V3x) = f2103(A_27d,A_27b,A_27a,A_27c,V0f1,V3x,V1f2) ) ) ).
fof(conj_thm_2Ealist_2Ealist__to__fmap__MAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [A_27d] :
( ne(A_27d)
=> ! [V0f1] :
( mem(V0f1,arr(A_27a,A_27b))
=> ! [V1f2] :
( mem(V1f2,arr(A_27c,A_27d))
=> ! [V2al] :
( mem(V2al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27c)))
=> ( p(ap(ap(ap(c_2Epred__set_2EINJ(A_27a,A_27b),V0f1),ap(c_2Elist_2ELIST__TO__SET(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27c),A_27a),c_2Epair_2EFST(A_27a,A_27c)),V2al))),c_2Epred__set_2EUNIV(A_27b)))
=> ap(c_2Ealist_2Ealist__to__fmap(A_27b,A_27d),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27c),ty_2Epair_2Eprod(A_27b,A_27d)),ap(c_2Epair_2EUNCURRY(A_27a,A_27c,ty_2Epair_2Eprod(A_27b,A_27d)),f2104(A_27c,A_27b,A_27d,A_27a,V0f1,V1f2))),V2al)) = ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27d),V0f1),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27c,A_27d),V1f2),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27c),V2al))) ) ) ) ) ) ) ) ) ).
fof(lameq_f2105,axiom,
! [A_27b,A_27a,V0al] :
( mem(V0al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1k] : ap(f2105(A_27b,A_27a,V0al),V1k) = ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),ap(c_2Eoption_2ETHE(A_27b),ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0al),V1k))) ) ).
fof(conj_thm_2Ealist_2Ealist__to__fmap__to__alist,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0al] :
( mem(V0al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V0al)) = ap(ap(c_2Elist_2EMAP(A_27a,ty_2Epair_2Eprod(A_27a,A_27b)),f2105(A_27b,A_27a,V0al)),ap(c_2Elist_2ESET__TO__LIST(A_27a),ap(c_2Elist_2ELIST__TO__SET(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0al)))) ) ) ) ).
fof(conj_thm_2Ealist_2Ealist__to__fmap__to__alist__PERM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0al] :
( mem(V0al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ( p(ap(c_2Elist_2EALL__DISTINCT(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0al)))
=> p(ap(ap(c_2Esorting_2EPERM(ty_2Epair_2Eprod(A_27a,A_27b)),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V0al))),V0al)) ) ) ) ) ).
fof(lameq_f2106,axiom,
! [A_27a,A_27b,V0ls] :
( mem(V0ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V2n] : ap(f2106(A_27a,A_27b,V0ls,V1k),V2n) = ap(ap(c_2Emin_2E_3D(A_27a),ap(ap(c_2Elist_2EEL(A_27a),V2n),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0ls))),V1k) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__LEAST__EL,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls] :
( mem(V0ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0ls),V1k) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(A_27b)),ap(ap(c_2Ebool_2EIN(A_27a),V1k),ap(c_2Elist_2ELIST__TO__SET(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0ls)))),ap(c_2Eoption_2ESOME(A_27b),ap(ap(c_2Elist_2EEL(A_27b),ap(c_2Ewhile_2ELEAST,f2106(A_27a,A_27b,V0ls,V1k))),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27b),c_2Epair_2ESND(A_27a,A_27b)),V0ls)))),c_2Eoption_2ENONE(A_27b)) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__ALL__DISTINCT__MEM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0al] :
( mem(V0al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V2v] :
( mem(V2v,A_27b)
=> ( ( p(ap(c_2Elist_2EALL__DISTINCT(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0al)))
& p(ap(ap(c_2Ebool_2EIN(ty_2Epair_2Eprod(A_27a,A_27b)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V2v)),ap(c_2Elist_2ELIST__TO__SET(ty_2Epair_2Eprod(A_27a,A_27b)),V0al))) )
=> ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0al),V1k) = ap(c_2Eoption_2ESOME(A_27b),V2v) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALL__DISTINCT__fmap__to__alist__keys,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> p(ap(c_2Elist_2EALL__DISTINCT(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V0fm)))) ) ) ) ).
fof(conj_thm_2Ealist_2Efmap__to__alist__inj,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f1] :
( mem(V0f1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1f2] :
( mem(V1f2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V0f1) = ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V1f2)
=> V0f1 = V1f2 ) ) ) ) ) ).
fof(conj_thm_2Ealist_2Efmap__to__alist__preserves__FDOM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0fm1] :
( mem(V0fm1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1fm2] :
( mem(V1fm2,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ( ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0fm1) = ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1fm2)
=> ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V0fm1)) = ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27c),A_27a),c_2Epair_2EFST(A_27a,A_27c)),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27c),V1fm2)) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EPERM__fmap__to__alist,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm1] :
( mem(V0fm1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1fm2] :
( mem(V1fm2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Esorting_2EPERM(ty_2Epair_2Eprod(A_27a,A_27b)),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V0fm1)),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V1fm2)))
<=> V0fm1 = V1fm2 ) ) ) ) ) ).
fof(conj_thm_2Ealist_2Ealist__to__fmap__PERM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0l1] :
( mem(V0l1,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1l2] :
( mem(V1l2,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ( ( p(ap(ap(c_2Esorting_2EPERM(ty_2Epair_2Eprod(A_27a,A_27b)),V0l1),V1l2))
& p(ap(c_2Elist_2EALL__DISTINCT(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0l1))) )
=> ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V0l1) = ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V1l2) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__ALL__DISTINCT__EL,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls] :
( mem(V0ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( ( p(ap(ap(c_2Eprim__rec_2E_3C,V1n),ap(c_2Elist_2ELENGTH(ty_2Epair_2Eprod(A_27a,A_27b)),V0ls)))
& p(ap(c_2Elist_2EALL__DISTINCT(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0ls))) )
=> ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0ls),ap(c_2Epair_2EFST(A_27a,A_27b),ap(ap(c_2Elist_2EEL(ty_2Epair_2Eprod(A_27a,A_27b)),V1n),V0ls))) = ap(c_2Eoption_2ESOME(A_27b),ap(c_2Epair_2ESND(A_27a,A_27b),ap(ap(c_2Elist_2EEL(ty_2Epair_2Eprod(A_27a,A_27b)),V1n),V0ls))) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__ZIP__MAP__SND,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [A_27d] :
( ne(A_27d)
=> ! [V0l1] :
( mem(V0l1,ty_2Elist_2Elist(A_27a))
=> ! [V1l2] :
( mem(V1l2,ty_2Elist_2Elist(A_27b))
=> ! [V2k] :
( mem(V2k,A_27c)
=> ! [V3f] :
( mem(V3f,arr(A_27b,A_27d))
=> ( ap(c_2Elist_2ELENGTH(A_27a),V0l1) = ap(c_2Elist_2ELENGTH(A_27b),V1l2)
=> ap(c_2Ealist_2EALOOKUP(A_27d,A_27a),ap(c_2Elist_2EZIP(A_27a,A_27d),ap(ap(c_2Epair_2E_2C(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(A_27d)),V0l1),ap(ap(c_2Elist_2EMAP(A_27b,A_27d),V3f),V1l2)))) = ap(ap(c_2Ecombin_2Eo(A_27a,ty_2Eoption_2Eoption(A_27d),ty_2Eoption_2Eoption(A_27b)),ap(c_2Eoption_2EOPTION__MAP(A_27b,A_27d),V3f)),ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),ap(c_2Elist_2EZIP(A_27a,A_27b),ap(ap(c_2Epair_2E_2C(ty_2Elist_2Elist(A_27a),ty_2Elist_2Elist(A_27b)),V0l1),V1l2)))) ) ) ) ) ) ) ) ) ) ).
fof(lameq_f2107,axiom,
! [A_27b,A_27a,V0P] :
( mem(V0P,arr(A_27a,bool))
=> ! [V3k] : ap(f2107(A_27b,A_27a,V0P),V3k) = k(A_27b,ap(V0P,V3k)) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__FILTER,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(A_27a,bool))
=> ! [V1ls] :
( mem(V1ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),ap(ap(c_2Elist_2EFILTER(ty_2Epair_2Eprod(A_27a,A_27b)),ap(c_2Epair_2EUNCURRY(A_27a,A_27b,bool),f2107(A_27b,A_27a,V0P))),V1ls)),V2x) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(A_27b)),ap(V0P,V2x)),ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V1ls),V2x)),c_2Eoption_2ENONE(A_27b)) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__APPEND__same,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0l1] :
( mem(V0l1,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1l2] :
( mem(V1l2,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ( ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0l1) = ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V1l2)
=> ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),ap(ap(c_2Elist_2EAPPEND(ty_2Epair_2Eprod(A_27a,A_27b)),V0l1),V2l)) = ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),ap(ap(c_2Elist_2EAPPEND(ty_2Epair_2Eprod(A_27a,A_27b)),V1l2),V2l)) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__IN__FRANGE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls] :
( mem(V0ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V2v] :
( mem(V2v,A_27b)
=> ( ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0ls),V1k) = ap(c_2Eoption_2ESOME(A_27b),V2v)
=> p(ap(ap(c_2Ebool_2EIN(A_27b),V2v),ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27b),V0ls)))) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EFRANGE__alist__to__fmap__SUBSET,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls] :
( mem(V0ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> p(ap(ap(c_2Epred__set_2ESUBSET(A_27a),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),ap(c_2Ealist_2Ealist__to__fmap(A_27b,A_27a),V0ls))),ap(ap(c_2Epred__set_2EIMAGE(ty_2Epair_2Eprod(A_27b,A_27a),A_27a),c_2Epair_2ESND(A_27b,A_27a)),ap(c_2Elist_2ELIST__TO__SET(ty_2Epair_2Eprod(A_27b,A_27a)),V0ls)))) ) ) ) ).
fof(conj_thm_2Ealist_2EIN__FRANGE__alist__to__fmap__suff,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls] :
( mem(V0ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> ! [V1P] :
( mem(V1P,arr(A_27a,bool))
=> ( ! [V2v] :
( mem(V2v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2v),ap(c_2Elist_2ELIST__TO__SET(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27b,A_27a),A_27a),c_2Epair_2ESND(A_27b,A_27a)),V0ls))))
=> p(ap(V1P,V2v)) ) )
=> ! [V3v] :
( mem(V3v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),ap(c_2Ealist_2Ealist__to__fmap(A_27b,A_27a),V0ls))))
=> p(ap(V1P,V3v)) ) ) ) ) ) ) ) ).
fof(lameq_f2108,axiom,
! [A_27d,A_27b,A_27a,A_27c,V0f1] :
( mem(V0f1,arr(A_27a,A_27b))
=> ! [V5x] :
( mem(V5x,A_27a)
=> ! [V1f2] :
( mem(V1f2,arr(A_27c,A_27d))
=> ! [V6y] : ap(f2108(A_27d,A_27b,A_27a,A_27c,V0f1,V5x,V1f2),V6y) = ap(ap(c_2Epair_2E_2C(A_27b,A_27d),ap(V0f1,V5x)),ap(V1f2,V6y)) ) ) ) ).
fof(lameq_f2109,axiom,
! [A_27c,A_27b,A_27d,A_27a,V0f1] :
( mem(V0f1,arr(A_27a,A_27b))
=> ! [V1f2] :
( mem(V1f2,arr(A_27c,A_27d))
=> ! [V5x] : ap(f2109(A_27c,A_27b,A_27d,A_27a,V0f1,V1f2),V5x) = f2108(A_27d,A_27b,A_27a,A_27c,V0f1,V5x,V1f2) ) ) ).
fof(conj_thm_2Ealist_2Ealist__to__fmap__MAP__matchable,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [A_27d] :
( ne(A_27d)
=> ! [V0f1] :
( mem(V0f1,arr(A_27a,A_27b))
=> ! [V1f2] :
( mem(V1f2,arr(A_27c,A_27d))
=> ! [V2al] :
( mem(V2al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27c)))
=> ! [V3mal] :
( mem(V3mal,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27d)))
=> ! [V4v] :
( mem(V4v,ty_2Efinite__map_2Efmap(A_27b,A_27d))
=> ( ( p(ap(ap(ap(c_2Epred__set_2EINJ(A_27a,A_27b),V0f1),ap(c_2Elist_2ELIST__TO__SET(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27c),A_27a),c_2Epair_2EFST(A_27a,A_27c)),V2al))),c_2Epred__set_2EUNIV(A_27b)))
& V3mal = ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27c),ty_2Epair_2Eprod(A_27b,A_27d)),ap(c_2Epair_2EUNCURRY(A_27a,A_27c,ty_2Epair_2Eprod(A_27b,A_27d)),f2109(A_27c,A_27b,A_27d,A_27a,V0f1,V1f2))),V2al)
& V4v = ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27d),V0f1),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27c,A_27d),V1f2),ap(c_2Ealist_2Ealist__to__fmap(A_27a,A_27c),V2al))) )
=> ap(c_2Ealist_2Ealist__to__fmap(A_27b,A_27d),V3mal) = V4v ) ) ) ) ) ) ) ) ) ) ).
fof(lameq_f2110,axiom,
! [A_27b,A_27c,A_27a,V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ! [V2k] :
( mem(V2k,A_27c)
=> ! [V3v] : ap(f2110(A_27b,A_27c,A_27a,V0f,V2k),V3v) = ap(ap(c_2Epair_2E_2C(A_27c,A_27b),V2k),ap(V0f,V3v)) ) ) ).
fof(lameq_f2111,axiom,
! [A_27a,A_27b,A_27c,V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ! [V2k] : ap(f2111(A_27a,A_27b,A_27c,V0f),V2k) = f2110(A_27b,A_27c,A_27a,V0f,V2k) ) ).
fof(conj_thm_2Ealist_2EMAP__values__fmap__to__alist,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27c,A_27a))
=> ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27c,A_27a),ty_2Epair_2Eprod(A_27c,A_27b)),ap(c_2Epair_2EUNCURRY(A_27c,A_27a,ty_2Epair_2Eprod(A_27c,A_27b)),f2111(A_27a,A_27b,A_27c,V0f))),ap(c_2Ealist_2Efmap__to__alist(A_27c,A_27a),V1fm)) = ap(c_2Ealist_2Efmap__to__alist(A_27c,A_27b),ap(ap(c_2Efinite__map_2Eo__f(A_27c,A_27a,A_27b),V0f),V1fm)) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EMAP__KEYS__I,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27a,A_27b),c_2Ecombin_2EI(A_27a)),V0fm) = V0fm ) ) ) ).
fof(conj_thm_2Ealist_2Ealist__to__fmap__MAP__values,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ! [V1al] :
( mem(V1al,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27c,A_27a)))
=> ap(c_2Ealist_2Ealist__to__fmap(A_27c,A_27b),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27c,A_27a),ty_2Epair_2Eprod(A_27c,A_27b)),ap(c_2Epair_2EUNCURRY(A_27c,A_27a,ty_2Epair_2Eprod(A_27c,A_27b)),f2111(A_27a,A_27b,A_27c,V0f))),V1al)) = ap(ap(c_2Efinite__map_2Eo__f(A_27c,A_27a,A_27b),V0f),ap(c_2Ealist_2Ealist__to__fmap(A_27c,A_27a),V1al)) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2Eset__MAP__FST__fmap__to__alist,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(c_2Elist_2ELIST__TO__SET(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),ap(c_2Ealist_2Efmap__to__alist(A_27a,A_27b),V0fm))) = ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0fm) ) ) ) ).
fof(conj_thm_2Ealist_2Ealookup__distinct__reverse,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0l] :
( mem(V0l,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ( p(ap(c_2Elist_2EALL__DISTINCT(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0l)))
=> ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),ap(c_2Elist_2EREVERSE(ty_2Epair_2Eprod(A_27a,A_27b)),V0l)),V1k) = ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0l),V1k) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2Eflookup__fupdate__list,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0l] :
( mem(V0l,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V2m] :
( mem(V2m,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V2m),V0l)),V1k) = ap(ap(ap(c_2Eoption_2Eoption__CASE(A_27b,ty_2Eoption_2Eoption(A_27b)),ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),ap(c_2Elist_2EREVERSE(ty_2Epair_2Eprod(A_27a,A_27b)),V0l)),V1k)),ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V2m),V1k)),f2102(A_27b)) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2Efupdate__list__funion,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0m] :
( mem(V0m,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V0m),V1l) = ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V1l)),V0m) ) ) ) ) ).
fof(conj_thm_2Ealist_2Emem__to__flookup,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0x] :
( mem(V0x,A_27a)
=> ! [V1y] :
( mem(V1y,A_27b)
=> ! [V2l] :
( mem(V2l,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ( ( p(ap(c_2Elist_2EALL__DISTINCT(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V2l)))
& p(ap(ap(c_2Ebool_2EIN(ty_2Epair_2Eprod(A_27a,A_27b)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V0x),V1y)),ap(c_2Elist_2ELIST__TO__SET(ty_2Epair_2Eprod(A_27a,A_27b)),V2l))) )
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V2l)),V0x) = ap(c_2Eoption_2ESOME(A_27b),V1y) ) ) ) ) ) ) ).
fof(lameq_f2112,axiom,
! [A_27c,A_27b,V2x] :
( mem(V2x,A_27b)
=> ! [V3x_27] : ap(f2112(A_27c,A_27b,V2x),V3x_27) = k(A_27c,ap(ap(c_2Emin_2E_3D(A_27b),V2x),V3x_27)) ) ).
fof(conj_thm_2Ealist_2Ealookup__filter,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,A_27a)
=> ! [V1l] :
( mem(V1l,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27c)))
=> ! [V2x] :
( mem(V2x,A_27b)
=> ap(ap(c_2Ealist_2EALOOKUP(A_27c,A_27b),V1l),V2x) = ap(ap(c_2Ealist_2EALOOKUP(A_27c,A_27b),ap(ap(c_2Elist_2EFILTER(ty_2Epair_2Eprod(A_27b,A_27c)),ap(c_2Epair_2EUNCURRY(A_27b,A_27c,bool),f2112(A_27c,A_27b,V2x))),V1l)),V2x) ) ) ) ) ) ) ).
fof(lameq_f2113,axiom,
! [A_27a,A_27b,V0m] :
( mem(V0m,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> ! [V1v] :
( mem(V1v,A_27a)
=> ! [V2k] : ap(f2113(A_27a,A_27b,V0m,V1v),V2k) = ap(ap(c_2Emin_2E_3D(ty_2Eoption_2Eoption(A_27a)),ap(ap(c_2Ealist_2EALOOKUP(A_27a,A_27b),V0m),V2k)),ap(c_2Eoption_2ESOME(A_27a),V1v)) ) ) ).
fof(lameq_f2114,axiom,
! [A_27b,A_27a,V0m] :
( mem(V0m,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> ! [V1v] : ap(f2114(A_27b,A_27a,V0m),V1v) = ap(ap(c_2Epair_2E_2C(A_27a,bool),V1v),ap(c_2Ebool_2E_3F(A_27b),f2113(A_27a,A_27b,V0m,V1v))) ) ).
fof(ax_thm_2Ealist_2Ealist__range__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0m] :
( mem(V0m,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> ap(c_2Ealist_2Ealist__range(A_27a,A_27b),V0m) = ap(c_2Epred__set_2EGSPEC(A_27a,A_27a),f2114(A_27b,A_27a,V0m)) ) ) ) ).
fof(conj_thm_2Ealist_2Ealookup__stable__sorted,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27a,bool)))
=> ! [V1sort] :
( mem(V1sort,arr(arr(ty_2Epair_2Eprod(A_27a,A_27b),arr(ty_2Epair_2Eprod(A_27a,A_27b),bool)),arr(ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)),ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3l] :
( mem(V3l,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ( ( p(ap(c_2Erelation_2Etransitive(A_27a),V0R))
& p(ap(c_2Erelation_2Etotal(A_27a),V0R))
& p(ap(ap(c_2Esorting_2ESTABLE(ty_2Epair_2Eprod(A_27a,A_27b)),V1sort),ap(ap(c_2Erelation_2Einv__image(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),V0R),c_2Epair_2EFST(A_27a,A_27b)))) )
=> ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),ap(ap(V1sort,ap(ap(c_2Erelation_2Einv__image(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),V0R),c_2Epair_2EFST(A_27a,A_27b))),V3l)),V2x) = ap(ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V3l),V2x) ) ) ) ) ) ) ) ).
fof(conj_thm_2Ealist_2EALOOKUP__ALL__DISTINCT__PERM__same,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0l1] :
( mem(V0l1,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1l2] :
( mem(V1l2,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ( ( p(ap(c_2Elist_2EALL__DISTINCT(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0l1)))
& p(ap(ap(c_2Esorting_2EPERM(A_27a),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0l1)),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V1l2)))
& ap(c_2Elist_2ELIST__TO__SET(ty_2Epair_2Eprod(A_27a,A_27b)),V0l1) = ap(c_2Elist_2ELIST__TO__SET(ty_2Epair_2Eprod(A_27a,A_27b)),V1l2) )
=> ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V0l1) = ap(c_2Ealist_2EALOOKUP(A_27b,A_27a),V1l2) ) ) ) ) ) ).
%------------------------------------------------------------------------------