ITP001 Axioms: ITP065+5.ax
%------------------------------------------------------------------------------
% File : ITP065+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 : finite_map+2.ax [Gau20]
% : HL4065+5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 358 ( 8 unt; 0 def)
% Number of atoms : 2297 ( 360 equ)
% Maximal formula atoms : 17 ( 6 avg)
% Number of connectives : 1969 ( 30 ~; 9 |; 137 &)
% ( 62 <=>;1731 =>; 0 <=; 0 <~>)
% Maximal formula depth : 24 ( 11 avg)
% Maximal term depth : 12 ( 2 avg)
% Number of predicates : 4 ( 3 usr; 0 prp; 1-2 aty)
% Number of functors : 169 ( 169 usr; 15 con; 0-10 aty)
% Number of variables : 1805 (1782 !; 23 ?)
% SPC : FOF_SAT_RFO_SEQ
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
fof(ne_ty_2Efinite__map_2Efmap,axiom,
! [A0] :
( ne(A0)
=> ! [A1] :
( ne(A1)
=> ne(ty_2Efinite__map_2Efmap(A0,A1)) ) ) ).
fof(mem_c_2Efinite__map_2EDRESTRICT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(arr(A_27a,bool),ty_2Efinite__map_2Efmap(A_27a,A_27b)))) ) ) ).
fof(mem_c_2Efinite__map_2EFAPPLY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(A_27a,A_27b))) ) ) ).
fof(mem_c_2Efinite__map_2EFCARD,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EFCARD(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),ty_2Enum_2Enum)) ) ) ).
fof(mem_c_2Efinite__map_2EFDOM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EFDOM(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(A_27a,bool))) ) ) ).
fof(mem_c_2Efinite__map_2EFEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EFEMPTY(A_27a,A_27b),ty_2Efinite__map_2Efmap(A_27a,A_27b)) ) ) ).
fof(mem_c_2Efinite__map_2EFEVERY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EFEVERY(A_27a,A_27b),arr(arr(ty_2Epair_2Eprod(A_27a,A_27b),bool),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),bool))) ) ) ).
fof(mem_c_2Efinite__map_2EFLOOKUP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(A_27a,ty_2Eoption_2Eoption(A_27b)))) ) ) ).
fof(mem_c_2Efinite__map_2EFMAP__MAP2,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> mem(c_2Efinite__map_2EFMAP__MAP2(A_27a,A_27b,A_27c),arr(arr(ty_2Epair_2Eprod(A_27a,A_27c),A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27c),ty_2Efinite__map_2Efmap(A_27a,A_27b)))) ) ) ) ).
fof(mem_c_2Efinite__map_2EFMERGE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EFMERGE(A_27a,A_27b),arr(arr(A_27a,arr(A_27a,A_27a)),arr(ty_2Efinite__map_2Efmap(A_27b,A_27a),arr(ty_2Efinite__map_2Efmap(A_27b,A_27a),ty_2Efinite__map_2Efmap(A_27b,A_27a))))) ) ) ).
fof(mem_c_2Efinite__map_2EFRANGE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EFRANGE(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(A_27b,bool))) ) ) ).
fof(mem_c_2Efinite__map_2EFUNION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EFUNION(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),ty_2Efinite__map_2Efmap(A_27a,A_27b)))) ) ) ).
fof(mem_c_2Efinite__map_2EFUN__FMAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EFUN__FMAP(A_27a,A_27b),arr(arr(A_27a,A_27b),arr(arr(A_27a,bool),ty_2Efinite__map_2Efmap(A_27a,A_27b)))) ) ) ).
fof(mem_c_2Efinite__map_2EFUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Efinite__map_2Efmap(A_27a,A_27b)))) ) ) ).
fof(mem_c_2Efinite__map_2EFUPDATE__LIST,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(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_2Efinite__map_2EMAP__KEYS,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> mem(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),arr(arr(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27c),ty_2Efinite__map_2Efmap(A_27b,A_27c)))) ) ) ) ).
fof(mem_c_2Efinite__map_2ERRESTRICT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2ERRESTRICT(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(arr(A_27b,bool),ty_2Efinite__map_2Efmap(A_27a,A_27b)))) ) ) ).
fof(mem_c_2Efinite__map_2ESUBMAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),bool))) ) ) ).
fof(mem_c_2Efinite__map_2Ef__o,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> mem(c_2Efinite__map_2Ef__o(A_27a,A_27b,A_27c),arr(ty_2Efinite__map_2Efmap(A_27b,A_27c),arr(arr(A_27a,A_27b),ty_2Efinite__map_2Efmap(A_27a,A_27c)))) ) ) ) ).
fof(mem_c_2Efinite__map_2Ef__o__f,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> mem(c_2Efinite__map_2Ef__o__f(A_27a,A_27b,A_27c),arr(ty_2Efinite__map_2Efmap(A_27b,A_27c),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),ty_2Efinite__map_2Efmap(A_27a,A_27c)))) ) ) ) ).
fof(mem_c_2Efinite__map_2Efdomsub,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2Efdomsub(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(A_27a,ty_2Efinite__map_2Efmap(A_27a,A_27b)))) ) ) ).
fof(mem_c_2Efinite__map_2Efmap__ABS,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2Efmap__ABS(A_27a,A_27b),arr(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),ty_2Efinite__map_2Efmap(A_27a,A_27b))) ) ) ).
fof(mem_c_2Efinite__map_2Efmap__EQ__UPTO,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2Efmap__EQ__UPTO(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(arr(A_27a,bool),bool)))) ) ) ).
fof(mem_c_2Efinite__map_2Efmap__REP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2Efmap__REP(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))) ) ) ).
fof(mem_c_2Efinite__map_2Efmap__inverse,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2Efmap__inverse(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27b,A_27a),bool))) ) ) ).
fof(mem_c_2Efinite__map_2Efmap__rel,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> mem(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),arr(arr(A_27a,arr(A_27b,bool)),arr(ty_2Efinite__map_2Efmap(A_27c,A_27a),arr(ty_2Efinite__map_2Efmap(A_27c,A_27b),bool)))) ) ) ) ).
fof(mem_c_2Efinite__map_2Efmap__size,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2Efmap__size(A_27a,A_27b),arr(arr(A_27a,ty_2Enum_2Enum),arr(arr(A_27b,ty_2Enum_2Enum),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),ty_2Enum_2Enum)))) ) ) ).
fof(mem_c_2Efinite__map_2Eis__fmap,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> mem(c_2Efinite__map_2Eis__fmap(A_27a,A_27b),arr(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),bool)) ) ) ).
fof(mem_c_2Efinite__map_2Eo__f,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> mem(c_2Efinite__map_2Eo__f(A_27a,A_27b,A_27c),arr(arr(A_27b,A_27c),arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),ty_2Efinite__map_2Efmap(A_27a,A_27c)))) ) ) ) ).
fof(lameq_f1894,axiom,
! [A_27b,A_27a,V6b] :
( mem(V6b,A_27b)
=> ! [V5a] :
( mem(V5a,A_27a)
=> ! [V4f] :
( mem(V4f,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ! [V7x] : ap(f1894(A_27b,A_27a,V6b,V5a,V4f),V7x) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),ap(ap(c_2Emin_2E_3D(A_27a),V7x),V5a)),ap(c_2Esum_2EINL(A_27b,ty_2Eone_2Eone),V6b)),ap(V4f,V7x)) ) ) ) ).
fof(lameq_f1895,axiom,
! [A_27a,A_27b,V5a] :
( mem(V5a,A_27a)
=> ! [V2a0] :
( mem(V2a0,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ! [V1is__fmap_27] :
( mem(V1is__fmap_27,arr(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),bool))
=> ! [V4f] :
( mem(V4f,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ! [V6b] : ap(f1895(A_27a,A_27b,V5a,V2a0,V1is__fmap_27,V4f),V6b) = ap(ap(c_2Ebool_2E_2F_5C,ap(ap(c_2Emin_2E_3D(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone))),V2a0),f1894(A_27b,A_27a,V6b,V5a,V4f))),ap(V1is__fmap_27,V4f)) ) ) ) ) ).
fof(lameq_f1896,axiom,
! [A_27b,A_27a,V4f] :
( mem(V4f,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ! [V1is__fmap_27] :
( mem(V1is__fmap_27,arr(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),bool))
=> ! [V2a0] :
( mem(V2a0,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ! [V5a] : ap(f1896(A_27b,A_27a,V4f,V1is__fmap_27,V2a0),V5a) = ap(c_2Ebool_2E_3F(A_27b),f1895(A_27a,A_27b,V5a,V2a0,V1is__fmap_27,V4f)) ) ) ) ).
fof(lameq_f1897,axiom,
! [A_27b,A_27a,V2a0] :
( mem(V2a0,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ! [V1is__fmap_27] :
( mem(V1is__fmap_27,arr(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),bool))
=> ! [V4f] : ap(f1897(A_27b,A_27a,V2a0,V1is__fmap_27),V4f) = ap(c_2Ebool_2E_3F(A_27a),f1896(A_27b,A_27a,V4f,V1is__fmap_27,V2a0)) ) ) ).
fof(lameq_f1898,axiom,
! [A_27a,A_27b,V1is__fmap_27] :
( mem(V1is__fmap_27,arr(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),bool))
=> ! [V2a0] : ap(f1898(A_27a,A_27b,V1is__fmap_27),V2a0) = ap(ap(c_2Emin_2E_3D_3D_3E,ap(ap(c_2Ebool_2E_5C_2F,ap(ap(c_2Emin_2E_3D(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone))),V2a0),k(A_27a,ap(c_2Esum_2EINR(A_27b,ty_2Eone_2Eone),c_2Eone_2Eone)))),ap(c_2Ebool_2E_3F(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone))),f1897(A_27b,A_27a,V2a0,V1is__fmap_27)))),ap(V1is__fmap_27,V2a0)) ) ).
fof(lameq_f1899,axiom,
! [A_27a,A_27b,V0a0] :
( mem(V0a0,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ! [V1is__fmap_27] : ap(f1899(A_27a,A_27b,V0a0),V1is__fmap_27) = ap(ap(c_2Emin_2E_3D_3D_3E,ap(c_2Ebool_2E_21(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone))),f1898(A_27a,A_27b,V1is__fmap_27))),ap(V1is__fmap_27,V0a0)) ) ).
fof(lameq_f1900,axiom,
! [A_27a,A_27b,V0a0] : ap(f1900(A_27a,A_27b),V0a0) = ap(c_2Ebool_2E_21(arr(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),bool)),f1899(A_27a,A_27b,V0a0)) ).
fof(ax_thm_2Efinite__map_2Eis__fmap__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> c_2Efinite__map_2Eis__fmap(A_27a,A_27b) = f1900(A_27a,A_27b) ) ) ).
fof(lameq_f1901,axiom,
! [A_27b,A_27a,V3b] :
( mem(V3b,A_27b)
=> ! [V2a] :
( mem(V2a,A_27a)
=> ! [V1f] :
( mem(V1f,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ! [V4x] : ap(f1901(A_27b,A_27a,V3b,V2a,V1f),V4x) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),ap(ap(c_2Emin_2E_3D(A_27a),V4x),V2a)),ap(c_2Esum_2EINL(A_27b,ty_2Eone_2Eone),V3b)),ap(V1f,V4x)) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eis__fmap__rules,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ( p(ap(c_2Efinite__map_2Eis__fmap(A_27a,A_27b),k(A_27a,ap(c_2Esum_2EINR(A_27b,ty_2Eone_2Eone),c_2Eone_2Eone))))
& ! [V1f] :
( mem(V1f,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ! [V2a] :
( mem(V2a,A_27a)
=> ! [V3b] :
( mem(V3b,A_27b)
=> ( p(ap(c_2Efinite__map_2Eis__fmap(A_27a,A_27b),V1f))
=> p(ap(c_2Efinite__map_2Eis__fmap(A_27a,A_27b),f1901(A_27b,A_27a,V3b,V2a,V1f))) ) ) ) ) ) ) ) ).
fof(lameq_f1902,axiom,
! [A_27b,A_27a,V4b] :
( mem(V4b,A_27b)
=> ! [V3a] :
( mem(V3a,A_27a)
=> ! [V2f] :
( mem(V2f,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ! [V5x] : ap(f1902(A_27b,A_27a,V4b,V3a,V2f),V5x) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),ap(ap(c_2Emin_2E_3D(A_27a),V5x),V3a)),ap(c_2Esum_2EINL(A_27b,ty_2Eone_2Eone),V4b)),ap(V2f,V5x)) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eis__fmap__ind,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0is__fmap_27] :
( mem(V0is__fmap_27,arr(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),bool))
=> ( ( p(ap(V0is__fmap_27,k(A_27a,ap(c_2Esum_2EINR(A_27b,ty_2Eone_2Eone),c_2Eone_2Eone))))
& ! [V2f] :
( mem(V2f,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ! [V3a] :
( mem(V3a,A_27a)
=> ! [V4b] :
( mem(V4b,A_27b)
=> ( p(ap(V0is__fmap_27,V2f))
=> p(ap(V0is__fmap_27,f1902(A_27b,A_27a,V4b,V3a,V2f))) ) ) ) ) )
=> ! [V6a0] :
( mem(V6a0,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ( p(ap(c_2Efinite__map_2Eis__fmap(A_27a,A_27b),V6a0))
=> p(ap(V0is__fmap_27,V6a0)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eis__fmap__strongind,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0is__fmap_27] :
( mem(V0is__fmap_27,arr(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),bool))
=> ( ( p(ap(V0is__fmap_27,k(A_27a,ap(c_2Esum_2EINR(A_27b,ty_2Eone_2Eone),c_2Eone_2Eone))))
& ! [V2f] :
( mem(V2f,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ! [V3a] :
( mem(V3a,A_27a)
=> ! [V4b] :
( mem(V4b,A_27b)
=> ( ( p(ap(c_2Efinite__map_2Eis__fmap(A_27a,A_27b),V2f))
& p(ap(V0is__fmap_27,V2f)) )
=> p(ap(V0is__fmap_27,f1902(A_27b,A_27a,V4b,V3a,V2f))) ) ) ) ) )
=> ! [V6a0] :
( mem(V6a0,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ( p(ap(c_2Efinite__map_2Eis__fmap(A_27a,A_27b),V6a0))
=> p(ap(V0is__fmap_27,V6a0)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eis__fmap__cases,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0a0] :
( mem(V0a0,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ( p(ap(c_2Efinite__map_2Eis__fmap(A_27a,A_27b),V0a0))
<=> ( V0a0 = k(A_27a,ap(c_2Esum_2EINR(A_27b,ty_2Eone_2Eone),c_2Eone_2Eone))
| ? [V2f] :
( mem(V2f,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
& ? [V3a] :
( mem(V3a,A_27a)
& ? [V4b] :
( mem(V4b,A_27b)
& V0a0 = f1902(A_27b,A_27a,V4b,V3a,V2f)
& p(ap(c_2Efinite__map_2Eis__fmap(A_27a,A_27b),V2f)) ) ) ) ) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2Efmap__TY__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ? [V0rep] :
( mem(V0rep,arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone))))
& p(ap(ap(c_2Ebool_2ETYPE__DEFINITION(arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),ty_2Efinite__map_2Efmap(A_27a,A_27b)),c_2Efinite__map_2Eis__fmap(A_27a,A_27b)),V0rep)) ) ) ) ).
fof(ax_thm_2Efinite__map_2Efmap__ISO__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ( ! [V0a] :
( mem(V0a,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(c_2Efinite__map_2Efmap__ABS(A_27a,A_27b),ap(c_2Efinite__map_2Efmap__REP(A_27a,A_27b),V0a)) = V0a )
& ! [V1r] :
( mem(V1r,arr(A_27a,ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)))
=> ( p(ap(c_2Efinite__map_2Eis__fmap(A_27a,A_27b),V1r))
<=> ap(c_2Efinite__map_2Efmap__REP(A_27a,A_27b),ap(c_2Efinite__map_2Efmap__ABS(A_27a,A_27b),V1r)) = V1r ) ) ) ) ) ).
fof(lameq_f1903,axiom,
! [A_27b,A_27a,V2y] :
( mem(V2y,A_27b)
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V3a] : ap(f1903(A_27b,A_27a,V2y,V1x,V0f),V3a) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Esum_2Esum(A_27b,ty_2Eone_2Eone)),ap(ap(c_2Emin_2E_3D(A_27a),V3a),V1x)),ap(c_2Esum_2EINL(A_27b,ty_2Eone_2Eone),V2y)),ap(ap(c_2Efinite__map_2Efmap__REP(A_27a,A_27b),V0f),V3a)) ) ) ) ).
fof(ax_thm_2Efinite__map_2EFUPDATE__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2y] :
( mem(V2y,A_27b)
=> ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1x),V2y)) = ap(c_2Efinite__map_2Efmap__ABS(A_27a,A_27b),f1903(A_27b,A_27a,V2y,V1x,V0f)) ) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2EFEMPTY__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> c_2Efinite__map_2EFEMPTY(A_27a,A_27b) = ap(c_2Efinite__map_2Efmap__ABS(A_27a,A_27b),k(A_27a,ap(c_2Esum_2EINR(A_27b,ty_2Eone_2Eone),c_2Eone_2Eone))) ) ) ).
fof(ax_thm_2Efinite__map_2EFAPPLY__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V1x) = ap(c_2Esum_2EOUTL(A_27b,ty_2Eone_2Eone),ap(ap(c_2Efinite__map_2Efmap__REP(A_27a,A_27b),V0f),V1x)) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2EFDOM__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ( p(ap(ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f),V1x))
<=> p(ap(c_2Esum_2EISL(A_27b,ty_2Eone_2Eone),ap(ap(c_2Efinite__map_2Efmap__REP(A_27a,A_27b),V0f),V1x))) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFAPPLY__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2y] :
( mem(V2y,A_27b)
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1x),V2y))),V1x) = V2y ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ENOT__EQ__FAPPLY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1a] :
( mem(V1a,A_27a)
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> ( V1a != V2x
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))),V1a) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V1a) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__COMMUTES,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1a] :
( mem(V1a,A_27a)
=> ! [V2b] :
( mem(V2b,A_27b)
=> ! [V3c] :
( mem(V3c,A_27a)
=> ! [V4d] :
( mem(V4d,A_27b)
=> ( V1a != V3c
=> ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1a),V2b))),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3c),V4d)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3c),V4d))),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1a),V2b)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__EQ,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1a] :
( mem(V1a,A_27a)
=> ! [V2b] :
( mem(V2b,A_27b)
=> ! [V3c] :
( mem(V3c,A_27b)
=> ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1a),V2b))),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1a),V3c)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1a),V3c)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)) = c_2Epred__set_2EEMPTY(A_27a) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1a] :
( mem(V1a,A_27a)
=> ! [V2b] :
( mem(V2b,A_27b)
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1a),V2b))) = ap(ap(c_2Epred__set_2EINSERT(A_27a),V1a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFAPPLY__FUPDATE__THM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1a] :
( mem(V1a,A_27a)
=> ! [V2b] :
( mem(V2b,A_27b)
=> ! [V3x] :
( mem(V3x,A_27a)
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1a),V2b))),V3x) = ap(ap(ap(c_2Ebool_2ECOND(A_27b),ap(ap(c_2Emin_2E_3D(A_27a),V3x),V1a)),V2b),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V3x)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ENOT__EQ__FEMPTY__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1a] :
( mem(V1a,A_27a)
=> ! [V2b] :
( mem(V2b,A_27b)
=> c_2Efinite__map_2EFEMPTY(A_27a,A_27b) != ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1a),V2b)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__EQ__FDOM__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V1x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)))
=> ! [V2y] :
( mem(V2y,A_27b)
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1x),V2y))) = ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__SIMPLE__INDUCT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),bool))
=> ( ( p(ap(V0P,c_2Efinite__map_2EFEMPTY(A_27a,A_27b)))
& ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(V0P,V1f))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> p(ap(V0P,ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y)))) ) ) ) ) )
=> ! [V4f] :
( mem(V4f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> p(ap(V0P,V4f)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__EQ__EMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f) = c_2Epred__set_2EEMPTY(A_27a)
<=> V0f = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__EQ__EMPTY__SYM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( c_2Epred__set_2EEMPTY(A_27a) = ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)
<=> V0f = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__F__FEMPTY1,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ! [V1a] :
( mem(V1a,A_27a)
=> ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V1a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f))) )
<=> V0f = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__FINITE,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_2Epred__set_2EFINITE(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0fm))) ) ) ) ).
fof(ax_thm_2Efinite__map_2EFCARD__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(c_2Efinite__map_2EFCARD(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_2Efinite__map_2EFCARD__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ap(c_2Efinite__map_2EFCARD(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)) = c_2Enum_2E0 ) ) ).
fof(conj_thm_2Efinite__map_2EFCARD__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1a] :
( mem(V1a,A_27a)
=> ! [V2b] :
( mem(V2b,A_27b)
=> ap(c_2Efinite__map_2EFCARD(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1a),V2b))) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Enum_2Enum),ap(ap(c_2Ebool_2EIN(A_27a),V1a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0fm))),ap(c_2Efinite__map_2EFCARD(A_27a,A_27b),V0fm)),ap(ap(c_2Earithmetic_2E_2B,ap(c_2Earithmetic_2ENUMERAL,ap(c_2Earithmetic_2EBIT1,c_2Earithmetic_2EZERO))),ap(c_2Efinite__map_2EFCARD(A_27a,A_27b),V0fm))) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFCARD__0__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ap(c_2Efinite__map_2EFCARD(A_27a,A_27b),V0f) = c_2Enum_2E0
<=> V0f = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFCARD__SUC,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1n] :
( mem(V1n,ty_2Enum_2Enum)
=> ( ap(c_2Efinite__map_2EFCARD(A_27a,A_27b),V0f) = ap(c_2Enum_2ESUC,V1n)
<=> ? [V2f_27] :
( mem(V2f_27,ty_2Efinite__map_2Efmap(A_27a,A_27b))
& ? [V3x] :
( mem(V3x,A_27a)
& ? [V4y] :
( mem(V4y,A_27b)
& ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V3x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V2f_27)))
& ap(c_2Efinite__map_2EFCARD(A_27a,A_27b),V2f_27) = V1n
& V0f = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V2f_27),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3x),V4y)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__INDUCT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),bool))
=> ( ( p(ap(V0P,c_2Efinite__map_2EFEMPTY(A_27a,A_27b)))
& ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(V0P,V1f))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> ( ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1f)))
=> p(ap(V0P,ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y)))) ) ) ) ) ) )
=> ! [V4f] :
( mem(V4f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> p(ap(V0P,V4f)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFM__PULL__APART,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V1k),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0fm)))
=> ? [V2fm0] :
( mem(V2fm0,ty_2Efinite__map_2Efmap(A_27a,A_27b))
& ? [V3v] :
( mem(V3v,A_27b)
& V0fm = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V2fm0),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V3v))
& ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V1k),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V2fm0))) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ENOT__FDOM__FAPPLY__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ( ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V1x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V1x) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V1x) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__EQ,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f) = ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g)
& ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f) = ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1g) )
<=> V0f = V1g ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__EQ__THM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f) = ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g)
& ! [V2x] :
( mem(V2x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V2x) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1g),V2x) ) ) )
<=> V0f = V1g ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__EXT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( V0f = V1g
<=> ( ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f) = ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g)
& ! [V2x] :
( mem(V2x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V2x) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1g),V2x) ) ) ) ) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2ESUBMAP__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),V1g))
<=> ! [V2x] :
( mem(V2x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)))
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g)))
& ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V2x) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1g),V2x) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V0f)) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__REFL,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),V0f)) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__ANTISYM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),V1g))
& p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V1g),V0f)) )
<=> V0f = V1g ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__TRANS,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2h] :
( mem(V2h,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),V1g))
& p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V1g),V2h)) )
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),V2h)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EEQ__FDOM__SUBMAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( V0f = V1g
<=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),V1g))
& ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f) = ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__FUPDATE__EQN,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2y] :
( mem(V2y,A_27b)
=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1x),V2y))))
<=> ( ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V1x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)))
| ( ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V1x) = V2y
& p(ap(ap(c_2Ebool_2EIN(A_27a),V1x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f))) ) ) ) ) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2EDRESTRICT__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1r] :
( mem(V1r,arr(A_27a,bool))
=> ( ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),V1r)) = ap(ap(c_2Epred__set_2EINTER(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)),V1r)
& ! [V2x] :
( mem(V2x,A_27a)
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),V1r)),V2x) = ap(ap(ap(c_2Ebool_2ECOND(A_27b),ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(ap(c_2Epred__set_2EINTER(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)),V1r))),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V2x)),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V2x)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0r] :
( mem(V0r,arr(A_27a,bool))
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V0r) = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1r] :
( mem(V1r,arr(A_27a,bool))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))),V1r) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Efinite__map_2Efmap(A_27a,A_27b)),ap(ap(c_2Ebool_2EIN(A_27a),V2x),V1r)),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),V1r)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),V1r)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESTRONG__DRESTRICT__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1r] :
( mem(V1r,arr(A_27a,bool))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),V1r))
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))),V1r) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),ap(ap(c_2Epred__set_2EDELETE(A_27a),V1r),V2x))),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y)) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__DRESTRICT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1r] :
( mem(V1r,arr(A_27a,bool))
=> ! [V2x] :
( mem(V2x,A_27c)
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),V1r)) = ap(ap(c_2Epred__set_2EINTER(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)),V1r) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ENOT__FDOM__DRESTRICT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ( ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V1x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)))
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),ap(c_2Epred__set_2ECOMPL(A_27a),ap(ap(c_2Epred__set_2EINSERT(A_27a),V1x),c_2Epred__set_2EEMPTY(A_27a)))) = V0f ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__SUBMAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1r] :
( mem(V1r,arr(A_27a,bool))
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),V1r)),V0f)) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__DRESTRICT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1P] :
( mem(V1P,arr(A_27a,bool))
=> ! [V2Q] :
( mem(V2Q,arr(A_27a,bool))
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),V1P)),V2Q) = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),ap(ap(c_2Epred__set_2EINTER(A_27a),V1P),V2Q)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__IS__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),c_2Epred__set_2EEMPTY(A_27a)) = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__DRESTRICT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2y] :
( mem(V2y,A_27b)
=> ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1x),V2y)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),ap(c_2Epred__set_2ECOMPL(A_27a),ap(ap(c_2Epred__set_2EINSERT(A_27a),V1x),c_2Epred__set_2EEMPTY(A_27a))))),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1x),V2y)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESTRONG__DRESTRICT__FUPDATE__THM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1r] :
( mem(V1r,arr(A_27a,bool))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))),V1r) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Efinite__map_2Efmap(A_27a,A_27b)),ap(ap(c_2Ebool_2EIN(A_27a),V2x),V1r)),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),ap(ap(c_2Epred__set_2EINTER(A_27a),ap(c_2Epred__set_2ECOMPL(A_27a),ap(ap(c_2Epred__set_2EINSERT(A_27a),V2x),c_2Epred__set_2EEMPTY(A_27a)))),V1r))),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),ap(ap(c_2Epred__set_2EINTER(A_27a),ap(c_2Epred__set_2ECOMPL(A_27a),ap(ap(c_2Epred__set_2EINSERT(A_27a),V2x),c_2Epred__set_2EEMPTY(A_27a)))),V1r))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__UNIV,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),c_2Epred__set_2EUNIV(A_27a)) = V0f ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__DRESTRICT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1P] :
( mem(V1P,arr(A_27a,bool))
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),V1P)),V0f)) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__EQ__DRESTRICT,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))
=> ! [V2s1] :
( mem(V2s1,arr(A_27a,bool))
=> ! [V3s2] :
( mem(V3s2,arr(A_27a,bool))
=> ( ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f1),V2s1) = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1f2),V3s2)
<=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f1),V2s1)),V1f2))
& p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1f2),V3s2)),V0f1))
& ap(ap(c_2Epred__set_2EINTER(A_27a),V2s1),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)) = ap(ap(c_2Epred__set_2EINTER(A_27a),V3s2),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1f2)) ) ) ) ) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2EFUNION__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),V1g)) = ap(ap(c_2Epred__set_2EUNION(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g))
& ! [V2x] :
( mem(V2x,A_27a)
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),V1g)),V2x) = ap(ap(ap(c_2Ebool_2ECOND(A_27b),ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f))),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V2x)),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1g),V2x)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUNION__FEMPTY__1,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0g] :
( mem(V0g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V0g) = V0g ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUNION__FEMPTY__2,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)) = V0f ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUNION__FUPDATE__1,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))),V1g) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),V1g)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUNION__FUPDATE__2,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1g),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Efinite__map_2Efmap(A_27a,A_27b)),ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f))),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),V1g)),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),V1g)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__FUNION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2x] :
( mem(V2x,A_27c)
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),V1g)) = ap(ap(c_2Epred__set_2EUNION(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUNION__IDEMPOT,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_2EFUNION(A_27a,A_27b),V0fm),V0fm) = V0fm ) ) ) ).
fof(ax_thm_2Efinite__map_2EFMERGE__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0m] :
( mem(V0m,arr(A_27a,arr(A_27a,A_27a)))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V2g] :
( mem(V2g,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ( ap(c_2Efinite__map_2EFDOM(A_27b,A_27a),ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27a,A_27b),V0m),V1f),V2g)) = ap(ap(c_2Epred__set_2EUNION(A_27b),ap(c_2Efinite__map_2EFDOM(A_27b,A_27a),V1f)),ap(c_2Efinite__map_2EFDOM(A_27b,A_27a),V2g))
& ! [V3x] :
( mem(V3x,A_27b)
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27b,A_27a),ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27a,A_27b),V0m),V1f),V2g)),V3x) = ap(ap(ap(c_2Ebool_2ECOND(A_27a),ap(c_2Ebool_2E_7E,ap(ap(c_2Ebool_2EIN(A_27b),V3x),ap(c_2Efinite__map_2EFDOM(A_27b,A_27a),V1f)))),ap(ap(c_2Efinite__map_2EFAPPLY(A_27b,A_27a),V2g),V3x)),ap(ap(ap(c_2Ebool_2ECOND(A_27a),ap(c_2Ebool_2E_7E,ap(ap(c_2Ebool_2EIN(A_27b),V3x),ap(c_2Efinite__map_2EFDOM(A_27b,A_27a),V2g)))),ap(ap(c_2Efinite__map_2EFAPPLY(A_27b,A_27a),V1f),V3x)),ap(ap(V0m,ap(ap(c_2Efinite__map_2EFAPPLY(A_27b,A_27a),V1f),V3x)),ap(ap(c_2Efinite__map_2EFAPPLY(A_27b,A_27a),V2g),V3x)))) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMERGE__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0m] :
( mem(V0m,arr(A_27b,arr(A_27b,A_27b)))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27b,A_27a),V0m),V1f),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)) = V1f
& ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27b,A_27a),V0m),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V1f) = V1f ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__FMERGE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0m] :
( mem(V0m,arr(A_27a,arr(A_27a,A_27a)))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V2g] :
( mem(V2g,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ap(c_2Efinite__map_2EFDOM(A_27b,A_27a),ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27a,A_27b),V0m),V1f),V2g)) = ap(ap(c_2Epred__set_2EUNION(A_27b),ap(c_2Efinite__map_2EFDOM(A_27b,A_27a),V1f)),ap(c_2Efinite__map_2EFDOM(A_27b,A_27a),V2g)) ) ) ) ) ) ).
fof(lameq_f1904,axiom,
! [A_27b,V0x] : ap(f1904(A_27b),V0x) = k(A_27b,V0x) ).
fof(conj_thm_2Efinite__map_2EFMERGE__FUNION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> c_2Efinite__map_2EFUNION(A_27a,A_27b) = ap(c_2Efinite__map_2EFMERGE(A_27b,A_27a),f1904(A_27b)) ) ) ).
fof(conj_thm_2Efinite__map_2EFUNION__FMERGE,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))
=> ! [V2m] :
( mem(V2m,arr(A_27b,arr(A_27b,A_27b)))
=> ( p(ap(ap(c_2Epred__set_2EDISJOINT(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1f2)))
=> ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27b,A_27a),V2m),V0f1),V1f2) = ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f1),V1f2) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMERGE__NO__CHANGE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0m] :
( mem(V0m,arr(A_27b,arr(A_27b,A_27b)))
=> ! [V1f1] :
( mem(V1f1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2f2] :
( mem(V2f2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27b,A_27a),V0m),V1f1),V2f2) = V1f1
<=> ! [V3x] :
( mem(V3x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V2f2)))
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1f1)))
& ap(ap(V0m,ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1f1),V3x)),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V2f2),V3x)) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1f1),V3x) ) ) ) )
& ( ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27b,A_27a),V0m),V1f1),V2f2) = V2f2
<=> ! [V4x] :
( mem(V4x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V4x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1f1)))
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V4x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V2f2)))
& ap(ap(V0m,ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1f1),V4x)),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V2f2),V4x)) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V2f2),V4x) ) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMERGE__COMM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0m] :
( mem(V0m,arr(A_27b,arr(A_27b,A_27b)))
=> ( p(ap(c_2Ecombin_2ECOMM(ty_2Efinite__map_2Efmap(A_27a,A_27b),ty_2Efinite__map_2Efmap(A_27a,A_27b)),ap(c_2Efinite__map_2EFMERGE(A_27b,A_27a),V0m)))
<=> p(ap(c_2Ecombin_2ECOMM(A_27b,A_27b),V0m)) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMERGE__ASSOC,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0m] :
( mem(V0m,arr(A_27b,arr(A_27b,A_27b)))
=> ( p(ap(c_2Ecombin_2EASSOC(ty_2Efinite__map_2Efmap(A_27a,A_27b)),ap(c_2Efinite__map_2EFMERGE(A_27b,A_27a),V0m)))
<=> p(ap(c_2Ecombin_2EASSOC(A_27b),V0m)) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMERGE__DRESTRICT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,arr(A_27b,arr(A_27b,A_27b)))
=> ! [V1st1] :
( mem(V1st1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2st2] :
( mem(V2st2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V3vs] :
( mem(V3vs,arr(A_27a,bool))
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27b,A_27a),V0f),V1st1),V2st2)),V3vs) = ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27b,A_27a),V0f),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1st1),V3vs)),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V2st2),V3vs)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMERGE__EQ__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0m] :
( mem(V0m,arr(A_27b,arr(A_27b,A_27b)))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2g] :
( mem(V2g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27b,A_27a),V0m),V1f),V2g) = c_2Efinite__map_2EFEMPTY(A_27a,A_27b)
<=> ( V1f = c_2Efinite__map_2EFEMPTY(A_27a,A_27b)
& V2g = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2EFLOOKUP__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0f),V1x) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(A_27b)),ap(ap(c_2Ebool_2EIN(A_27a),V1x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f))),ap(c_2Eoption_2ESOME(A_27b),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V1x))),c_2Eoption_2ENONE(A_27b)) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFLOOKUP__EMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0k] :
( mem(V0k,A_27b)
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27a),c_2Efinite__map_2EFEMPTY(A_27b,A_27a)),V0k) = c_2Eoption_2ENONE(A_27a) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFLOOKUP__UPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V1k1] :
( mem(V1k1,A_27b)
=> ! [V2v] :
( mem(V2v,A_27a)
=> ! [V3k2] :
( mem(V3k2,A_27b)
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27a),ap(ap(c_2Efinite__map_2EFUPDATE(A_27b,A_27a),V0fm),ap(ap(c_2Epair_2E_2C(A_27b,A_27a),V1k1),V2v))),V3k2) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(A_27a)),ap(ap(c_2Emin_2E_3D(A_27b),V1k1),V3k2)),ap(c_2Eoption_2ESOME(A_27a),V2v)),ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27a),V0fm),V3k2)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFLOOKUP__SUBMAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3v] :
( mem(V3v,A_27b)
=> ( ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),V1g))
& ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0f),V2k) = ap(c_2Eoption_2ESOME(A_27b),V3v) )
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V1g),V2k) = ap(c_2Eoption_2ESOME(A_27b),V3v) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__FUPDATE__FLOOKUP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2y] :
( mem(V2y,A_27b)
=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1x),V2y))))
<=> ( ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0f),V1x) = c_2Eoption_2ENONE(A_27b)
| ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0f),V1x) = ap(c_2Eoption_2ESOME(A_27b),V2y) ) ) ) ) ) ) ) ).
fof(lameq_f1905,axiom,
! [A_27a,V3v] : ap(f1905(A_27a),V3v) = ap(c_2Eoption_2ESOME(A_27a),V3v) ).
fof(conj_thm_2Efinite__map_2EFLOOKUP__FUNION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f1] :
( mem(V0f1,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V1f2] :
( mem(V1f2,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V2k] :
( mem(V2k,A_27b)
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27a),ap(ap(c_2Efinite__map_2EFUNION(A_27b,A_27a),V0f1),V1f2)),V2k) = ap(ap(ap(c_2Eoption_2Eoption__CASE(A_27a,ty_2Eoption_2Eoption(A_27a)),ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27a),V0f1),V2k)),ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27a),V1f2),V2k)),f1905(A_27a)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFLOOKUP__EXT,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))
=> ( V0f1 = V1f2
<=> ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0f1) = ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V1f2) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__eq__flookup,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))
=> ( V0f1 = V1f2
<=> ! [V2x] :
( mem(V2x,A_27a)
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0f1),V2x) = ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V1f2),V2x) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFLOOKUP__DRESTRICT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1s] :
( mem(V1s,arr(A_27a,bool))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0fm),V1s)),V2k) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(A_27b)),ap(ap(c_2Ebool_2EIN(A_27a),V2k),V1s)),ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0fm),V2k)),c_2Eoption_2ENONE(A_27b)) ) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2EFEVERY__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Epair_2Eprod(A_27a,A_27b),bool))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),V1f))
<=> ! [V2x] :
( mem(V2x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1f)))
=> p(ap(V0P,ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1f),V2x)))) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFEVERY__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Epair_2Eprod(A_27a,A_27b),bool))
=> p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),c_2Efinite__map_2EFEMPTY(A_27a,A_27b))) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFEVERY__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Epair_2Eprod(A_27a,A_27b),bool))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> ( p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))))
<=> ( p(ap(V0P,ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y)))
& p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1f),ap(c_2Epred__set_2ECOMPL(A_27a),ap(ap(c_2Epred__set_2EINSERT(A_27a),V2x),c_2Epred__set_2EEMPTY(A_27a)))))) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFEVERY__FLOOKUP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Epair_2Eprod(A_27a,A_27b),bool))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3v] :
( mem(V3v,A_27b)
=> ( ( p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),V1f))
& ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V1f),V2k) = ap(c_2Eoption_2ESOME(A_27b),V3v) )
=> p(ap(V0P,ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V3v))) ) ) ) ) ) ) ) ).
fof(lameq_f1906,axiom,
! [A_27b,A_27c,A_27a,V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2x] : ap(f1906(A_27b,A_27c,A_27a,V0f,V1g),V2x) = ap(ap(c_2Epair_2E_2C(A_27a,bool),V2x),ap(ap(c_2Ebool_2EIN(A_27b),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1g),V2x)),ap(c_2Efinite__map_2EFDOM(A_27b,A_27c),V0f))) ) ) ).
fof(ax_thm_2Efinite__map_2Ef__o__f__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),ap(ap(c_2Efinite__map_2Ef__o__f(A_27a,A_27b,A_27c),V0f),V1g)) = ap(ap(c_2Epred__set_2EINTER(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g)),ap(c_2Epred__set_2EGSPEC(A_27a,A_27a),f1906(A_27b,A_27c,A_27a,V0f,V1g)))
& ! [V3x] :
( mem(V3x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),ap(ap(c_2Efinite__map_2Ef__o__f(A_27a,A_27b,A_27c),V0f),V1g))))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27c),ap(ap(c_2Efinite__map_2Ef__o__f(A_27a,A_27b,A_27c),V0f),V1g)),V3x) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27b,A_27c),V0f),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1g),V3x)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Ef__o__f__FEMPTY__1,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2Ef__o__f(A_27a,A_27b,A_27c),c_2Efinite__map_2EFEMPTY(A_27b,A_27c)),V0f) = c_2Efinite__map_2EFEMPTY(A_27a,A_27c) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Ef__o__f__FEMPTY__2,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> ap(ap(c_2Efinite__map_2Ef__o__f(A_27a,A_27b,A_27c),V0f),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)) = c_2Efinite__map_2EFEMPTY(A_27a,A_27c) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2Eo__f__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27b,A_27c))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27b,A_27c),V0f),V1g)) = ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g)
& ! [V2x] :
( mem(V2x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27b,A_27c),V0f),V1g))))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27c),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27b,A_27c),V0f),V1g)),V2x) = ap(V0f,ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1g),V2x)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eo__f__FDOM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27b,A_27c))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g) = ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27b,A_27c),V0f),V1g)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__o__f,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27b,A_27c))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27b,A_27c),V0f),V1g)) = ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eo__f__FAPPLY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27b,A_27c))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g)))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27c),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27b,A_27c),V0f),V1g)),V2x) = ap(V0f,ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1g),V2x)) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eo__f__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27c,A_27b))
=> ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27c,A_27b),V0f),c_2Efinite__map_2EFEMPTY(A_27a,A_27c)) = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ) ).
fof(lameq_f1907,axiom,
! [A_27c,A_27a,A_27b,V2f] :
( mem(V2f,arr(A_27b,A_27c))
=> ! [V1P] :
( mem(V1P,arr(ty_2Epair_2Eprod(A_27a,A_27c),bool))
=> ! [V3x] : ap(f1907(A_27c,A_27a,A_27b,V2f,V1P),V3x) = ap(V1P,ap(ap(c_2Epair_2E_2C(A_27a,A_27c),ap(c_2Epair_2EFST(A_27a,A_27b),V3x)),ap(V2f,ap(c_2Epair_2ESND(A_27a,A_27b),V3x)))) ) ) ).
fof(conj_thm_2Efinite__map_2EFEVERY__o__f,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0m] :
( mem(V0m,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1P] :
( mem(V1P,arr(ty_2Epair_2Eprod(A_27a,A_27c),bool))
=> ! [V2f] :
( mem(V2f,arr(A_27b,A_27c))
=> ( p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27c),V1P),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27b,A_27c),V2f),V0m)))
<=> p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),f1907(A_27c,A_27a,A_27b,V2f,V1P)),V0m)) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eo__f__o__f,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [A_27d] :
( ne(A_27d)
=> ! [V0f] :
( mem(V0f,arr(A_27c,A_27b))
=> ! [V1g] :
( mem(V1g,arr(A_27d,A_27c))
=> ! [V2h] :
( mem(V2h,ty_2Efinite__map_2Efmap(A_27a,A_27d))
=> ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27c,A_27b),V0f),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27d,A_27c),V1g),V2h)) = ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27d,A_27b),ap(ap(c_2Ecombin_2Eo(A_27d,A_27b,A_27c),V0f),V1g)),V2h) ) ) ) ) ) ) ) ).
fof(lameq_f1908,axiom,
! [A_27a,A_27c,V0f] :
( mem(V0f,arr(A_27c,A_27a))
=> ! [V3v] : ap(f1908(A_27a,A_27c,V0f),V3v) = ap(c_2Eoption_2ESOME(A_27a),ap(V0f,V3v)) ) ).
fof(conj_thm_2Efinite__map_2EFLOOKUP__o__f,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27c,A_27a))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> ! [V2k] :
( mem(V2k,A_27b)
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27a),ap(ap(c_2Efinite__map_2Eo__f(A_27b,A_27c,A_27a),V0f),V1fm)),V2k) = ap(ap(ap(c_2Eoption_2Eoption__CASE(A_27c,ty_2Eoption_2Eoption(A_27a)),ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27c),V1fm),V2k)),c_2Eoption_2ENONE(A_27a)),f1908(A_27a,A_27c,V0f)) ) ) ) ) ) ) ).
fof(lameq_f1909,axiom,
! [A_27b,A_27a,V1y] :
( mem(V1y,A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2x] : ap(f1909(A_27b,A_27a,V1y,V0f),V2x) = ap(ap(c_2Ebool_2E_2F_5C,ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f))),ap(ap(c_2Emin_2E_3D(A_27b),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V2x)),V1y)) ) ) ).
fof(lameq_f1910,axiom,
! [A_27a,A_27b,V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1y] : ap(f1910(A_27a,A_27b,V0f),V1y) = ap(ap(c_2Epair_2E_2C(A_27b,bool),V1y),ap(c_2Ebool_2E_3F(A_27a),f1909(A_27b,A_27a,V1y,V0f))) ) ).
fof(ax_thm_2Efinite__map_2EFRANGE__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),V0f) = ap(c_2Epred__set_2EGSPEC(A_27b,A_27b),f1910(A_27a,A_27b,V0f)) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFRANGE__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),c_2Efinite__map_2EFEMPTY(A_27b,A_27a)) = c_2Epred__set_2EEMPTY(A_27a) ) ) ).
fof(conj_thm_2Efinite__map_2EFRANGE__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2y] :
( mem(V2y,A_27b)
=> ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1x),V2y))) = ap(ap(c_2Epred__set_2EINSERT(A_27b),V2y),ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),ap(c_2Epred__set_2ECOMPL(A_27a),ap(ap(c_2Epred__set_2EINSERT(A_27a),V1x),c_2Epred__set_2EEMPTY(A_27a)))))) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__FRANGE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),V1g))
=> p(ap(ap(c_2Epred__set_2ESUBSET(A_27b),ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),V0f)),ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),V1g))) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFINITE__FRANGE,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_2Epred__set_2EFINITE(A_27b),ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),V0fm))) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eo__f__FRANGE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0x] :
( mem(V0x,A_27a)
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V2f] :
( mem(V2f,arr(A_27a,A_27c))
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V0x),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V1g)))
=> p(ap(ap(c_2Ebool_2EIN(A_27c),ap(V2f,V0x)),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27c),ap(ap(c_2Efinite__map_2Eo__f(A_27b,A_27a,A_27c),V2f),V1g)))) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFRANGE__FLOOKUP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0v] :
( mem(V0v,A_27a)
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V0v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V1f)))
<=> ? [V2k] :
( mem(V2k,A_27b)
& ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27a),V1f),V2k) = ap(c_2Eoption_2ESOME(A_27a),V0v) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFRANGE__FUNION,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_2Epred__set_2EDISJOINT(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0fm1)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1fm2)))
=> ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0fm1),V1fm2)) = ap(ap(c_2Epred__set_2EUNION(A_27b),ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),V0fm1)),ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),V1fm2)) ) ) ) ) ) ).
fof(lameq_f1911,axiom,
! [A_27b,A_27a,V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1r] :
( mem(V1r,arr(A_27b,bool))
=> ! [V2x] : ap(f1911(A_27b,A_27a,V0f,V1r),V2x) = ap(ap(c_2Epair_2E_2C(A_27a,bool),V2x),ap(ap(c_2Ebool_2E_2F_5C,ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f))),ap(ap(c_2Ebool_2EIN(A_27b),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V2x)),V1r))) ) ) ).
fof(ax_thm_2Efinite__map_2ERRESTRICT__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1r] :
( mem(V1r,arr(A_27b,bool))
=> ( ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2ERRESTRICT(A_27a,A_27b),V0f),V1r)) = ap(c_2Epred__set_2EGSPEC(A_27a,A_27a),f1911(A_27b,A_27a,V0f,V1r))
& ! [V3x] :
( mem(V3x,A_27a)
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2ERRESTRICT(A_27a,A_27b),V0f),V1r)),V3x) = ap(ap(ap(c_2Ebool_2ECOND(A_27b),ap(ap(c_2Ebool_2E_2F_5C,ap(ap(c_2Ebool_2EIN(A_27a),V3x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f))),ap(ap(c_2Ebool_2EIN(A_27b),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V3x)),V1r))),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V3x)),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V3x)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ERRESTRICT__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0r] :
( mem(V0r,arr(A_27a,bool))
=> ap(ap(c_2Efinite__map_2ERRESTRICT(A_27b,A_27a),c_2Efinite__map_2EFEMPTY(A_27b,A_27a)),V0r) = c_2Efinite__map_2EFEMPTY(A_27b,A_27a) ) ) ) ).
fof(conj_thm_2Efinite__map_2ERRESTRICT__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1r] :
( mem(V1r,arr(A_27b,bool))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> ap(ap(c_2Efinite__map_2ERRESTRICT(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))),V1r) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Efinite__map_2Efmap(A_27a,A_27b)),ap(ap(c_2Ebool_2EIN(A_27b),V3y),V1r)),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2ERRESTRICT(A_27a,A_27b),V0f),V1r)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))),ap(ap(c_2Efinite__map_2ERRESTRICT(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),ap(c_2Epred__set_2ECOMPL(A_27a),ap(ap(c_2Epred__set_2EINSERT(A_27a),V2x),c_2Epred__set_2EEMPTY(A_27a))))),V1r)) ) ) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2EFUN__FMAP__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ! [V1P] :
( mem(V1P,arr(A_27a,bool))
=> ( p(ap(c_2Epred__set_2EFINITE(A_27a),V1P))
=> ( ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUN__FMAP(A_27a,A_27b),V0f),V1P)) = V1P
& ! [V2x] :
( mem(V2x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),V1P))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUN__FMAP(A_27a,A_27b),V0f),V1P)),V2x) = ap(V0f,V2x) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUN__FMAP__EMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EFUN__FMAP(A_27a,A_27b),V0f),c_2Epred__set_2EEMPTY(A_27a)) = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFRANGE__FMAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(A_27a,bool))
=> ! [V1f] :
( mem(V1f,arr(A_27a,A_27b))
=> ( p(ap(c_2Epred__set_2EFINITE(A_27a),V0P))
=> ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUN__FMAP(A_27a,A_27b),V1f),V0P)) = ap(ap(c_2Epred__set_2EIMAGE(A_27a,A_27b),V1f),V0P) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__FMAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ! [V1s] :
( mem(V1s,arr(A_27a,bool))
=> ( p(ap(c_2Epred__set_2EFINITE(A_27a),V1s))
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUN__FMAP(A_27a,A_27b),V0f),V1s)) = V1s ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFLOOKUP__FUN__FMAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(A_27a,bool))
=> ! [V1f] :
( mem(V1f,arr(A_27a,A_27b))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ( p(ap(c_2Epred__set_2EFINITE(A_27a),V0P))
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUN__FMAP(A_27a,A_27b),V1f),V0P)),V2k) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(A_27b)),ap(ap(c_2Ebool_2EIN(A_27a),V2k),V0P)),ap(c_2Eoption_2ESOME(A_27b),ap(V1f,V2k))),c_2Eoption_2ENONE(A_27b)) ) ) ) ) ) ) ).
fof(lameq_f1912,axiom,
! [A_27b,A_27c,A_27a,V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> ! [V1g] :
( mem(V1g,arr(A_27a,A_27b))
=> ! [V2x] : ap(f1912(A_27b,A_27c,A_27a,V0f,V1g),V2x) = ap(ap(c_2Epair_2E_2C(A_27a,bool),V2x),ap(ap(c_2Ebool_2EIN(A_27b),ap(V1g,V2x)),ap(c_2Efinite__map_2EFDOM(A_27b,A_27c),V0f))) ) ) ).
fof(ax_thm_2Efinite__map_2Ef__o__DEF,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> ! [V1g] :
( mem(V1g,arr(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2Ef__o(A_27a,A_27b,A_27c),V0f),V1g) = ap(ap(c_2Efinite__map_2Ef__o__f(A_27a,A_27b,A_27c),V0f),ap(ap(c_2Efinite__map_2EFUN__FMAP(A_27a,A_27b),V1g),ap(c_2Epred__set_2EGSPEC(A_27a,A_27a),f1912(A_27b,A_27c,A_27a,V0f,V1g)))) ) ) ) ) ) ).
fof(lameq_f1913,axiom,
! [A_27b,A_27c,A_27a,V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> ! [V1g] :
( mem(V1g,arr(A_27a,A_27b))
=> ! [V3x] : ap(f1913(A_27b,A_27c,A_27a,V0f,V1g),V3x) = ap(ap(c_2Epair_2E_2C(A_27a,bool),V3x),ap(ap(c_2Ebool_2EIN(A_27b),ap(V1g,V3x)),ap(c_2Efinite__map_2EFDOM(A_27b,A_27c),V0f))) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__f__o,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> ! [V1g] :
( mem(V1g,arr(A_27a,A_27b))
=> ( p(ap(c_2Epred__set_2EFINITE(A_27a),ap(c_2Epred__set_2EGSPEC(A_27a,A_27a),f1912(A_27b,A_27c,A_27a,V0f,V1g))))
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),ap(ap(c_2Efinite__map_2Ef__o(A_27a,A_27b,A_27c),V0f),V1g)) = ap(c_2Epred__set_2EGSPEC(A_27a,A_27a),f1913(A_27b,A_27c,A_27a,V0f,V1g)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Ef__o__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0g] :
( mem(V0g,arr(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2Ef__o(A_27a,A_27b,A_27c),c_2Efinite__map_2EFEMPTY(A_27b,A_27c)),V0g) = c_2Efinite__map_2EFEMPTY(A_27a,A_27c) ) ) ) ) ).
fof(lameq_f1914,axiom,
! [A_27a,A_27b,A_27c,V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V3g] :
( mem(V3g,arr(A_27c,A_27a))
=> ! [V4x] : ap(f1914(A_27a,A_27b,A_27c,V0fm,V3g),V4x) = ap(ap(c_2Epair_2E_2C(A_27c,bool),V4x),ap(ap(c_2Ebool_2EIN(A_27a),ap(V3g,V4x)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0fm))) ) ) ).
fof(lameq_f1915,axiom,
! [A_27a,A_27c,V1k] :
( mem(V1k,A_27a)
=> ! [V3g] :
( mem(V3g,arr(A_27c,A_27a))
=> ! [V5x] : ap(f1915(A_27a,A_27c,V1k,V3g),V5x) = ap(ap(c_2Epair_2E_2C(A_27c,bool),V5x),ap(ap(c_2Emin_2E_3D(A_27a),ap(V3g,V5x)),V1k)) ) ) ).
fof(lameq_f1916,axiom,
! [A_27a,A_27c,V1k] :
( mem(V1k,A_27a)
=> ! [V3g] :
( mem(V3g,arr(A_27c,A_27a))
=> ! [V6x] : ap(f1916(A_27a,A_27c,V1k,V3g),V6x) = ap(ap(c_2Epair_2E_2C(A_27c,bool),V6x),ap(ap(c_2Emin_2E_3D(A_27a),ap(V3g,V6x)),V1k)) ) ) ).
fof(conj_thm_2Efinite__map_2Ef__o__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V2v] :
( mem(V2v,A_27b)
=> ! [V3g] :
( mem(V3g,arr(A_27c,A_27a))
=> ( ( p(ap(c_2Epred__set_2EFINITE(A_27c),ap(c_2Epred__set_2EGSPEC(A_27c,A_27c),f1914(A_27a,A_27b,A_27c,V0fm,V3g))))
& p(ap(c_2Epred__set_2EFINITE(A_27c),ap(c_2Epred__set_2EGSPEC(A_27c,A_27c),f1915(A_27a,A_27c,V1k,V3g)))) )
=> ap(ap(c_2Efinite__map_2Ef__o(A_27c,A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V2v))),V3g) = ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27b,A_27c),ap(c_2Ecombin_2EC(A_27b,A_27b,A_27b),c_2Ecombin_2EK(A_27b,A_27b))),ap(ap(c_2Efinite__map_2Ef__o(A_27c,A_27a,A_27b),V0fm),V3g)),ap(ap(c_2Efinite__map_2EFUN__FMAP(A_27c,A_27b),ap(c_2Ecombin_2EK(A_27b,A_27c),V2v)),ap(c_2Epred__set_2EGSPEC(A_27c,A_27c),f1916(A_27a,A_27c,V1k,V3g)))) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFAPPLY__f__o,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> ! [V1g] :
( mem(V1g,arr(A_27a,A_27b))
=> ( p(ap(c_2Epred__set_2EFINITE(A_27a),ap(c_2Epred__set_2EGSPEC(A_27a,A_27a),f1912(A_27b,A_27c,A_27a,V0f,V1g))))
=> ! [V3x] :
( mem(V3x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),ap(ap(c_2Efinite__map_2Ef__o(A_27a,A_27b,A_27c),V0f),V1g))))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27c),ap(ap(c_2Efinite__map_2Ef__o(A_27a,A_27b,A_27c),V0f),V1g)),V3x) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27b,A_27c),V0f),ap(V1g,V3x)) ) ) ) ) ) ) ) ) ).
fof(lameq_f1917,axiom,
! [A_27b,A_27c,A_27a,V3f] :
( mem(V3f,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> ! [V0g] :
( mem(V0g,arr(A_27a,A_27b))
=> ! [V4x] : ap(f1917(A_27b,A_27c,A_27a,V3f,V0g),V4x) = ap(ap(c_2Epair_2E_2C(A_27a,bool),V4x),ap(ap(c_2Ebool_2EIN(A_27b),ap(V0g,V4x)),ap(c_2Efinite__map_2EFDOM(A_27b,A_27c),V3f))) ) ) ).
fof(conj_thm_2Efinite__map_2EFINITE__PRED__11,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0g] :
( mem(V0g,arr(A_27a,A_27b))
=> ( ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2y] :
( mem(V2y,A_27a)
=> ( ap(V0g,V1x) = ap(V0g,V2y)
<=> V1x = V2y ) ) )
=> ! [V3f] :
( mem(V3f,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> p(ap(c_2Epred__set_2EFINITE(A_27a),ap(c_2Epred__set_2EGSPEC(A_27a,A_27a),f1917(A_27b,A_27c,A_27a,V3f,V0g)))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Ef__o__ASSOC,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [A_27d] :
( ne(A_27d)
=> ! [V0g] :
( mem(V0g,arr(A_27a,A_27b))
=> ! [V1h] :
( mem(V1h,arr(A_27c,A_27a))
=> ! [V2f] :
( mem(V2f,ty_2Efinite__map_2Efmap(A_27b,A_27d))
=> ( ( ! [V3x] :
( mem(V3x,A_27a)
=> ! [V4y] :
( mem(V4y,A_27a)
=> ( ap(V0g,V3x) = ap(V0g,V4y)
<=> V3x = V4y ) ) )
& ! [V5x] :
( mem(V5x,A_27c)
=> ! [V6y] :
( mem(V6y,A_27c)
=> ( ap(V1h,V5x) = ap(V1h,V6y)
<=> V5x = V6y ) ) ) )
=> ap(ap(c_2Efinite__map_2Ef__o(A_27c,A_27a,A_27d),ap(ap(c_2Efinite__map_2Ef__o(A_27a,A_27b,A_27d),V2f),V0g)),V1h) = ap(ap(c_2Efinite__map_2Ef__o(A_27c,A_27b,A_27d),V2f),ap(ap(c_2Ecombin_2Eo(A_27c,A_27b,A_27a),V0g),V1h)) ) ) ) ) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2Efmap__domsub,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k) = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0fm),ap(c_2Epred__set_2ECOMPL(A_27a),ap(ap(c_2Epred__set_2EINSERT(A_27a),V1k),c_2Epred__set_2EEMPTY(A_27a)))) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0k] :
( mem(V0k,A_27a)
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V0k) = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V2v] :
( mem(V2v,A_27b)
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V2v))),V1k) = ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__FUPDATE__NEQ,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k1] :
( mem(V1k1,A_27a)
=> ! [V2k2] :
( mem(V2k2,A_27a)
=> ! [V3v] :
( mem(V3v,A_27b)
=> ( V1k1 != V2k2
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k1),V3v))),V2k2) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V2k2)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k1),V3v)) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__FUPDATE__THM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k1] :
( mem(V1k1,A_27a)
=> ! [V2k2] :
( mem(V2k2,A_27a)
=> ! [V3v] :
( mem(V3v,A_27b)
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k1),V3v))),V2k2) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Efinite__map_2Efmap(A_27a,A_27b)),ap(ap(c_2Emin_2E_3D(A_27a),V1k1),V2k2)),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V2k2)),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V2k2)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k1),V3v))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__DOMSUB,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k)) = ap(ap(c_2Epred__set_2EDELETE(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0fm)),V1k) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__FAPPLY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k)),V1k) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V1k) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__FAPPLY__NEQ,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k1] :
( mem(V1k1,A_27a)
=> ! [V2k2] :
( mem(V2k2,A_27a)
=> ( V1k1 != V2k2
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k1)),V2k2) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0fm),V2k2) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__FAPPLY__THM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k1] :
( mem(V1k1,A_27a)
=> ! [V2k2] :
( mem(V2k2,A_27a)
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k1)),V2k2) = ap(ap(ap(c_2Ebool_2ECOND(A_27b),ap(ap(c_2Emin_2E_3D(A_27a),V1k1),V2k2)),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V2k2)),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0fm),V2k2)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__FLOOKUP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k)),V1k) = c_2Eoption_2ENONE(A_27b) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__FLOOKUP__NEQ,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k1] :
( mem(V1k1,A_27a)
=> ! [V2k2] :
( mem(V2k2,A_27a)
=> ( V1k1 != V2k2
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k1)),V2k2) = ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0fm),V2k2) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__FLOOKUP__THM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k1] :
( mem(V1k1,A_27a)
=> ! [V2k2] :
( mem(V2k2,A_27a)
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k1)),V2k2) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Eoption_2Eoption(A_27b)),ap(ap(c_2Emin_2E_3D(A_27a),V1k1),V2k2)),c_2Eoption_2ENONE(A_27b)),ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0fm),V2k2)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFRANGE__FUPDATE__DOMSUB,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V2v] :
( mem(V2v,A_27b)
=> ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V2v))) = ap(ap(c_2Epred__set_2EINSERT(A_27b),V2v),ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k))) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eo__f__DOMSUB,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0g] :
( mem(V0g,arr(A_27c,A_27b))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27c,A_27b),V0g),V1fm)),V2k) = ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27c,A_27b),V0g),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27c),V1fm),V2k)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__IDEM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k)),V1k) = ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__COMMUTES,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k1] :
( mem(V1k1,A_27a)
=> ! [V2k2] :
( mem(V2k2,A_27a)
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V1k1)),V2k2) = ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0fm),V2k2)),V1k1) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eo__f__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27c,A_27b))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3v] :
( mem(V3v,A_27c)
=> ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27c,A_27b),V0f),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27c),V1fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27c),V2k),V3v))) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27c,A_27b),V0f),V1fm)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),ap(V0f,V3v))) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__NOT__IN__DOM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0k] :
( mem(V0k,A_27a)
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V0k),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1fm)))
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V1fm),V0k) = V1fm ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__CASES,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( V0f = c_2Efinite__map_2EFEMPTY(A_27a,A_27b)
| ? [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
& ? [V2x] :
( mem(V2x,A_27a)
& ? [V3y] :
( mem(V3y,A_27b)
& V0f = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1g),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y)) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__DOMSUB,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] :
( mem(V1k,A_27a)
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0f),V1k)),V0f)) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMERGE__DOMSUB,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0m] :
( mem(V0m,arr(A_27a,arr(A_27a,A_27a)))
=> ! [V1m1] :
( mem(V1m1,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V2m2] :
( mem(V2m2,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V3k] :
( mem(V3k,A_27b)
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27b,A_27a),ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27a,A_27b),V0m),V1m1),V2m2)),V3k) = ap(ap(ap(c_2Efinite__map_2EFMERGE(A_27a,A_27b),V0m),ap(ap(c_2Efinite__map_2Efdomsub(A_27b,A_27a),V1m1),V3k)),ap(ap(c_2Efinite__map_2Efdomsub(A_27b,A_27a),V2m2),V3k)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))),V1g))
<=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g)))
& ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1g),V2x) = V3y
& p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0f),V2x)),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V1g),V2x))) ) ) ) ) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2EFUPDATE__LIST,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b) = ap(c_2Elist_2EFOLDL(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Efinite__map_2Efmap(A_27a,A_27b)),c_2Efinite__map_2EFUPDATE(A_27a,A_27b)) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__THM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V0f),c_2Elist_2ENIL(ty_2Epair_2Eprod(A_27a,A_27b))) = V0f
& ! [V1h] :
( mem(V1h,ty_2Epair_2Eprod(A_27a,A_27b))
=> ! [V2t] :
( mem(V2t,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V0f),ap(ap(c_2Elist_2ECONS(ty_2Epair_2Eprod(A_27a,A_27b)),V1h),V2t)) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),V1h)),V2t) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__APPLY__NOT__MEM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0kvl] :
( mem(V0kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ( ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V2k),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)),V0kvl))))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1f),V0kvl)),V2k) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1f),V2k) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__APPEND,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1kvl1] :
( mem(V1kvl1,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V2kvl2] :
( mem(V2kvl2,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V0fm),ap(ap(c_2Elist_2EAPPEND(ty_2Epair_2Eprod(A_27a,A_27b)),V1kvl1),V2kvl2)) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V0fm),V1kvl1)),V2kvl2) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__FUPDATE__LIST__COMMUTES,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0k] :
( mem(V0k,A_27a)
=> ! [V1kvl] :
( mem(V1kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V2fm] :
( mem(V2fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V3v] :
( mem(V3v,A_27b)
=> ( ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V0k),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)),V1kvl))))
=> ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V2fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V0k),V3v))),V1kvl) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V2fm),V1kvl)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V0k),V3v)) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__FUPDATE__LIST__MEM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0k] :
( mem(V0k,A_27a)
=> ! [V1kvl] :
( mem(V1kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V2fm] :
( mem(V2fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V3v] :
( mem(V3v,A_27b)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V0k),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)),V1kvl))))
=> ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V2fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V0k),V3v))),V1kvl) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V2fm),V1kvl) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFEVERY__FUPDATE__LIST,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0kvl] :
( mem(V0kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1P] :
( mem(V1P,arr(ty_2Epair_2Eprod(A_27a,A_27b),bool))
=> ! [V2fm] :
( mem(V2fm,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)),V0kvl)))
=> ( p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V1P),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V2fm),V0kvl)))
<=> ( p(ap(ap(c_2Elist_2EEVERY(ty_2Epair_2Eprod(A_27a,A_27b)),V1P),V0kvl))
& p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V1P),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V2fm),ap(c_2Epred__set_2ECOMPL(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)),V0kvl)))))) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__APPLY__MEM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0kvl] :
( mem(V0kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3v] :
( mem(V3v,A_27b)
=> ! [V4n] :
( mem(V4n,ty_2Enum_2Enum)
=> ( ( p(ap(ap(c_2Eprim__rec_2E_3C,V4n),ap(c_2Elist_2ELENGTH(ty_2Epair_2Eprod(A_27a,A_27b)),V0kvl)))
& V2k = ap(ap(c_2Elist_2EEL(A_27a),V4n),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0kvl))
& V3v = ap(ap(c_2Elist_2EEL(A_27b),V4n),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27b),c_2Epair_2ESND(A_27a,A_27b)),V0kvl))
& ! [V5m] :
( mem(V5m,ty_2Enum_2Enum)
=> ( ( p(ap(ap(c_2Eprim__rec_2E_3C,V4n),V5m))
& p(ap(ap(c_2Eprim__rec_2E_3C,V5m),ap(c_2Elist_2ELENGTH(ty_2Epair_2Eprod(A_27a,A_27b)),V0kvl))) )
=> ap(ap(c_2Elist_2EEL(A_27a),V5m),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V0kvl)) != V2k ) ) )
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1f),V0kvl)),V2k) = V3v ) ) ) ) ) ) ) ) ).
fof(lameq_f1918,axiom,
! [A_27c,A_27b,A_27a,V1f2] :
( mem(V1f2,arr(A_27a,A_27c))
=> ! [V0f1] :
( mem(V0f1,arr(A_27a,A_27b))
=> ! [V4fm] :
( mem(V4fm,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> ! [V5k] : ap(f1918(A_27c,A_27b,A_27a,V1f2,V0f1,V4fm),V5k) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27b,A_27c),V4fm),ap(ap(c_2Epair_2E_2C(A_27b,A_27c),ap(V0f1,V5k)),ap(V1f2,V5k))) ) ) ) ).
fof(lameq_f1919,axiom,
! [A_27a,A_27b,A_27c,V1f2] :
( mem(V1f2,arr(A_27a,A_27c))
=> ! [V0f1] :
( mem(V0f1,arr(A_27a,A_27b))
=> ! [V4fm] : ap(f1919(A_27a,A_27b,A_27c,V1f2,V0f1),V4fm) = f1918(A_27c,A_27b,A_27a,V1f2,V0f1,V4fm) ) ) ).
fof(lameq_f1920,axiom,
! [A_27c,A_27b,A_27a,V0f1] :
( mem(V0f1,arr(A_27a,A_27b))
=> ! [V1f2] :
( mem(V1f2,arr(A_27a,A_27c))
=> ! [V6k] : ap(f1920(A_27c,A_27b,A_27a,V0f1,V1f2),V6k) = ap(ap(c_2Epair_2E_2C(A_27b,A_27c),ap(V0f1,V6k)),ap(V1f2,V6k)) ) ) ).
fof(conj_thm_2Efinite__map_2EFOLDL__FUPDATE__LIST,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f1] :
( mem(V0f1,arr(A_27a,A_27b))
=> ! [V1f2] :
( mem(V1f2,arr(A_27a,A_27c))
=> ! [V2ls] :
( mem(V2ls,ty_2Elist_2Elist(A_27a))
=> ! [V3a] :
( mem(V3a,ty_2Efinite__map_2Efmap(A_27b,A_27c))
=> ap(ap(ap(c_2Elist_2EFOLDL(A_27a,ty_2Efinite__map_2Efmap(A_27b,A_27c)),f1919(A_27a,A_27b,A_27c,V1f2,V0f1)),V3a),V2ls) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27b,A_27c),V3a),ap(ap(c_2Elist_2EMAP(A_27a,ty_2Epair_2Eprod(A_27b,A_27c)),f1920(A_27c,A_27b,A_27a,V0f1,V1f2)),V2ls)) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__SNOC,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0xs] :
( mem(V0xs,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1x] :
( mem(V1x,ty_2Epair_2Eprod(A_27a,A_27b))
=> ! [V2fm] :
( mem(V2fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V2fm),ap(ap(c_2Elist_2ESNOC(ty_2Epair_2Eprod(A_27a,A_27b)),V1x),V0xs)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V2fm),V0xs)),V1x) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPD11__SAME__KEY__AND__BASE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V2v1] :
( mem(V2v1,A_27b)
=> ! [V3v2] :
( mem(V3v2,A_27b)
=> ( ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V2v1)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V3v2))
<=> V2v1 = V3v2 ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPD11__SAME__NEW__KEY,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))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3v1] :
( mem(V3v1,A_27b)
=> ! [V4v2] :
( mem(V4v2,A_27b)
=> ( ( ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V2k),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)))
& ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V2k),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1f2))) )
=> ( ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f1),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V3v1)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1f2),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V4v2))
<=> ( V0f1 = V1f2
& V3v1 = V4v2 ) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESAME__KEY__UPDATES__DIFFER,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))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3v1] :
( mem(V3v1,A_27b)
=> ! [V4v2] :
( mem(V4v2,A_27b)
=> ( V3v1 != V4v2
=> ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f1),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V3v1)) != ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1f2),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V4v2)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPD11__SAME__BASE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k1] :
( mem(V1k1,A_27a)
=> ! [V2v1] :
( mem(V2v1,A_27b)
=> ! [V3k2] :
( mem(V3k2,A_27a)
=> ! [V4v2] :
( mem(V4v2,A_27b)
=> ( ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k1),V2v1)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3k2),V4v2))
<=> ( ( V1k1 = V3k2
& V2v1 = V4v2 )
| ( V1k1 != V3k2
& p(ap(ap(c_2Ebool_2EIN(A_27a),V1k1),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)))
& p(ap(ap(c_2Ebool_2EIN(A_27a),V3k2),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)))
& ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k1),V2v1)) = V0f
& ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3k2),V4v2)) = V0f ) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPD__SAME__KEY__UNWIND,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))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3v1] :
( mem(V3v1,A_27b)
=> ! [V4v2] :
( mem(V4v2,A_27b)
=> ( ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f1),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V3v1)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1f2),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V4v2))
=> ( V3v1 = V4v2
& ! [V5v] :
( mem(V5v,A_27b)
=> ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f1),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V5v)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1f2),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V5v)) ) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPD11__SAME__UPDATE,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))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3v] :
( mem(V3v,A_27b)
=> ( ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f1),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V3v)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1f2),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V3v))
<=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f1),ap(c_2Epred__set_2ECOMPL(A_27a),ap(ap(c_2Epred__set_2EINSERT(A_27a),V2k),c_2Epred__set_2EEMPTY(A_27a)))) = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1f2),ap(c_2Epred__set_2ECOMPL(A_27a),ap(ap(c_2Epred__set_2EINSERT(A_27a),V2k),c_2Epred__set_2EEMPTY(A_27a)))) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFDOM__FUPDATE__LIST,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0kvl] :
( mem(V0kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1fm),V0kvl)) = ap(ap(c_2Epred__set_2EUNION(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1fm)),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)),V0kvl))) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__SAME__UPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0kvl] :
( mem(V0kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1f1] :
( mem(V1f1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2f2] :
( mem(V2f2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1f1),V0kvl) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V2f2),V0kvl)
<=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1f1),ap(c_2Epred__set_2ECOMPL(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)),V0kvl)))) = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V2f2),ap(c_2Epred__set_2ECOMPL(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)),V0kvl)))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__SAME__KEYS__UNWIND,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))
=> ! [V2kvl1] :
( mem(V2kvl1,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V3kvl2] :
( mem(V3kvl2,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ( ( ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V0f1),V2kvl1) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1f2),V3kvl2)
& ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V2kvl1) = ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V3kvl2)
& 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)),V2kvl1))) )
=> ( V2kvl1 = V3kvl2
& ! [V4kvl] :
( mem(V4kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ( ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V4kvl) = ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27a),c_2Epair_2EFST(A_27a,A_27b)),V2kvl1)
=> ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V0f1),V4kvl) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1f2),V4kvl) ) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMEQ__ENUMERATE__CASES,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f1] :
( mem(V0f1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1kvl] :
( mem(V1kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V2p] :
( mem(V2p,ty_2Epair_2Eprod(A_27a,A_27b))
=> ( ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f1),V2p) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V1kvl)
=> p(ap(ap(c_2Ebool_2EIN(ty_2Epair_2Eprod(A_27a,A_27b)),V2p),ap(c_2Elist_2ELIST__TO__SET(ty_2Epair_2Eprod(A_27a,A_27b)),V1kvl))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMEQ__SINGLE__SIMPLE__ELIM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Efinite__map_2Efmap(A_27a,A_27b),bool))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V2v] :
( mem(V2v,A_27b)
=> ! [V3ck] :
( mem(V3ck,A_27a)
=> ! [V4cv] :
( mem(V4cv,A_27b)
=> ! [V5nv] :
( mem(V5nv,A_27b)
=> ( ? [V6fm] :
( mem(V6fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
& ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V6fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V2v)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3ck),V4cv))
& p(ap(V0P,ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V6fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V5nv)))) )
<=> ( V1k = V3ck
& V2v = V4cv
& p(ap(V0P,ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3ck),V5nv)))) ) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMEQ__SINGLE__SIMPLE__DISJ__ELIM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1k] :
( mem(V1k,A_27a)
=> ! [V2v] :
( mem(V2v,A_27b)
=> ! [V3ck] :
( mem(V3ck,A_27a)
=> ! [V4cv] :
( mem(V4cv,A_27b)
=> ( ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V2v)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3ck),V4cv))
<=> ( V1k = V3ck
& V2v = V4cv
& ( V0fm = c_2Efinite__map_2EFEMPTY(A_27a,A_27b)
| ? [V5v_27] :
( mem(V5v_27,A_27b)
& V0fm = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1k),V5v_27)) ) ) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__PURGE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2y] :
( mem(V2y,A_27b)
=> ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1x),V2y)) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0f),V1x)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V1x),V2y)) ) ) ) ) ) ).
fof(lameq_f1921,axiom,
! [A_27c,A_27b,A_27a,V1m] :
( mem(V1m,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ! [V0f] :
( mem(V0f,arr(ty_2Epair_2Eprod(A_27a,A_27c),A_27b))
=> ! [V2x] : ap(f1921(A_27c,A_27b,A_27a,V1m,V0f),V2x) = ap(V0f,ap(ap(c_2Epair_2E_2C(A_27a,A_27c),V2x),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27c),V1m),V2x))) ) ) ).
fof(ax_thm_2Efinite__map_2EFMAP__MAP2__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(ty_2Epair_2Eprod(A_27a,A_27c),A_27b))
=> ! [V1m] :
( mem(V1m,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ap(ap(c_2Efinite__map_2EFMAP__MAP2(A_27a,A_27b,A_27c),V0f),V1m) = ap(ap(c_2Efinite__map_2EFUN__FMAP(A_27a,A_27b),f1921(A_27c,A_27b,A_27a,V1m,V0f)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1m)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMAP__MAP2__THM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(ty_2Epair_2Eprod(A_27a,A_27c),A_27b))
=> ! [V1m] :
( mem(V1m,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ( ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFMAP__MAP2(A_27a,A_27b,A_27c),V0f),V1m)) = ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1m)
& ! [V2x] :
( mem(V2x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1m)))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFMAP__MAP2(A_27a,A_27b,A_27c),V0f),V1m)),V2x) = ap(V0f,ap(ap(c_2Epair_2E_2C(A_27a,A_27c),V2x),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27c),V1m),V2x))) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMAP__MAP2__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(ty_2Epair_2Eprod(A_27a,A_27c),A_27b))
=> ap(ap(c_2Efinite__map_2EFMAP__MAP2(A_27a,A_27b,A_27c),V0f),c_2Efinite__map_2EFEMPTY(A_27a,A_27c)) = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFMAP__MAP2__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(ty_2Epair_2Eprod(A_27a,A_27c),A_27b))
=> ! [V1m] :
( mem(V1m,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3v] :
( mem(V3v,A_27c)
=> ap(ap(c_2Efinite__map_2EFMAP__MAP2(A_27a,A_27b,A_27c),V0f),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27c),V1m),ap(ap(c_2Epair_2E_2C(A_27a,A_27c),V2x),V3v))) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFMAP__MAP2(A_27a,A_27b,A_27c),V0f),V1m)),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),ap(V0f,ap(ap(c_2Epair_2E_2C(A_27a,A_27c),V2x),V3v)))) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFEVERY__STRENGTHEN__THM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Epair_2Eprod(A_27a,A_27b),bool))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> ( p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)))
& ( ( p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),V1f))
& p(ap(V0P,ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))) )
=> p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y)))) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__ELIM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0k] :
( mem(V0k,A_27a)
=> ! [V1v] :
( mem(V1v,A_27b)
=> ! [V2f] :
( mem(V2f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( p(ap(ap(c_2Ebool_2EIN(A_27a),V0k),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V2f)))
& ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V2f),V0k) = V1v )
=> ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V2f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V0k),V1v)) = V2f ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFEVERY__DRESTRICT__COMPL,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Epair_2Eprod(A_27a,A_27b),bool))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3v] :
( mem(V3v,A_27b)
=> ! [V4s] :
( mem(V4s,arr(A_27a,bool))
=> ( p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V3v))),ap(c_2Epred__set_2ECOMPL(A_27a),V4s))))
<=> ( ( ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V2k),V4s))
=> p(ap(V0P,ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V3v))) )
& p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1f),ap(c_2Epred__set_2ECOMPL(A_27a),ap(ap(c_2Epred__set_2EINSERT(A_27a),V2k),V4s))))) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUNION__EQ__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0h1] :
( mem(V0h1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1h2] :
( mem(V1h2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0h1),V1h2) = c_2Efinite__map_2EFEMPTY(A_27a,A_27b)
<=> ( V0h1 = c_2Efinite__map_2EFEMPTY(A_27a,A_27b)
& V1h2 = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__FUNION__EQ,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [A_27d] :
( ne(A_27d)
=> ( ! [V0f1] :
( mem(V0f1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1f2] :
( mem(V1f2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2f3] :
( mem(V2f3,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Epred__set_2EDISJOINT(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1f2)))
=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f1),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V1f2),V2f3)))
<=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f1),V2f3)) ) ) ) ) )
& ! [V3f1] :
( mem(V3f1,ty_2Efinite__map_2Efmap(A_27c,A_27d))
=> ! [V4f2] :
( mem(V4f2,ty_2Efinite__map_2Efmap(A_27c,A_27d))
=> ! [V5f3] :
( mem(V5f3,ty_2Efinite__map_2Efmap(A_27c,A_27d))
=> ( p(ap(ap(c_2Epred__set_2EDISJOINT(A_27c),ap(c_2Efinite__map_2EFDOM(A_27c,A_27d),V3f1)),ap(ap(c_2Epred__set_2EDIFF(A_27c),ap(c_2Efinite__map_2EFDOM(A_27c,A_27d),V5f3)),ap(c_2Efinite__map_2EFDOM(A_27c,A_27d),V4f2))))
=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27c,A_27d),V3f1),ap(ap(c_2Efinite__map_2EFUNION(A_27c,A_27d),V4f2),V5f3)))
<=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27c,A_27d),V3f1),V4f2)) ) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__FUNION,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))
=> ! [V2f3] :
( mem(V2f3,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f1),V1f2))
| ( p(ap(ap(c_2Epred__set_2EDISJOINT(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1f2)))
& p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f1),V2f3)) ) )
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f1),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V1f2),V2f3))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__FUNION__ID,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [A_27d] :
( ne(A_27d)
=> ( ! [V0f1] :
( mem(V0f1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1f2] :
( mem(V1f2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f1),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f1),V1f2))) ) )
& ! [V2f1] :
( mem(V2f1,ty_2Efinite__map_2Efmap(A_27c,A_27d))
=> ! [V3f2] :
( mem(V3f2,ty_2Efinite__map_2Efmap(A_27c,A_27d))
=> ( p(ap(ap(c_2Epred__set_2EDISJOINT(A_27c),ap(c_2Efinite__map_2EFDOM(A_27c,A_27d),V2f1)),ap(c_2Efinite__map_2EFDOM(A_27c,A_27d),V3f2)))
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27c,A_27d),V3f2),ap(ap(c_2Efinite__map_2EFUNION(A_27c,A_27d),V2f1),V3f2))) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFEMPTY__SUBMAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0h] :
( mem(V0h,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0h),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)))
<=> V0h = c_2Efinite__map_2EFEMPTY(A_27a,A_27b) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUNION__EQ,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))
=> ! [V2f3] :
( mem(V2f3,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( p(ap(ap(c_2Epred__set_2EDISJOINT(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1f2)))
& p(ap(ap(c_2Epred__set_2EDISJOINT(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V2f3))) )
=> ( ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f1),V1f2) = ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f1),V2f3)
<=> V1f2 = V2f3 ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUNION__EQ__IMPL,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))
=> ! [V2f3] :
( mem(V2f3,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( p(ap(ap(c_2Epred__set_2EDISJOINT(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1f2)))
& p(ap(ap(c_2Epred__set_2EDISJOINT(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V2f3)))
& V1f2 = V2f3 )
=> ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f1),V1f2) = ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f1),V2f3) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__FUNION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),V1g)),V2k) = ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0f),V2k)),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V1g),V2k)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUNION__COMM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Epred__set_2EDISJOINT(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1g)))
=> ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),V1g) = ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V1g),V0f) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUNION__ASSOC,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2h] :
( mem(V2h,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V1g),V2h)) = ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),V1g)),V2h) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__FUNION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0h] :
( mem(V0h,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1s1] :
( mem(V1s1,arr(A_27a,bool))
=> ! [V2s2] :
( mem(V2s2,arr(A_27a,bool))
=> ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0h),V1s1)),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0h),V2s2)) = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0h),ap(ap(c_2Epred__set_2EUNION(A_27a),V1s1),V2s2)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__EQ__FUNION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0h] :
( mem(V0h,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1h1] :
( mem(V1h1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2h2] :
( mem(V2h2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( p(ap(ap(c_2Epred__set_2EDISJOINT(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1h1)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V2h2)))
& ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V1h1),V2h2) = V0h )
=> V2h2 = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0h),ap(c_2Epred__set_2ECOMPL(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1h1))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EIN__FDOM__FOLDR__UNION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0x] :
( mem(V0x,A_27a)
=> ! [V1hL] :
( mem(V1hL,ty_2Elist_2Elist(ty_2Efinite__map_2Efmap(A_27a,A_27b)))
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V0x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(ap(c_2Elist_2EFOLDR(ty_2Efinite__map_2Efmap(A_27a,A_27b),ty_2Efinite__map_2Efmap(A_27a,A_27b)),c_2Efinite__map_2EFUNION(A_27a,A_27b)),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V1hL))))
<=> ? [V2h] :
( mem(V2h,ty_2Efinite__map_2Efmap(A_27a,A_27b))
& p(ap(ap(c_2Ebool_2EIN(ty_2Efinite__map_2Efmap(A_27a,A_27b)),V2h),ap(c_2Elist_2ELIST__TO__SET(ty_2Efinite__map_2Efmap(A_27a,A_27b)),V1hL)))
& p(ap(ap(c_2Ebool_2EIN(A_27a),V0x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V2h))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__FUNION__DRESTRICT__COMPL,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1s] :
( mem(V1s,arr(A_27a,bool))
=> ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),V1s)),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),ap(c_2Epred__set_2ECOMPL(A_27a),V1s))) = V0f ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__IDEMPOT,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0s] :
( mem(V0s,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1vs] :
( mem(V1vs,arr(A_27a,bool))
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0s),V1vs)),V1vs) = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0s),V1vs) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__FUNION__ABSORPTION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),V1g))
<=> ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f),V1g) = V1g ) ) ) ) ) ).
fof(lameq_f1922,axiom,
! [A_27c,A_27b,A_27a,V1f] :
( mem(V1f,arr(A_27a,A_27b))
=> ! [V0m] :
( mem(V0m,arr(arr(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27c),ty_2Efinite__map_2Efmap(A_27b,A_27c))))
=> ! [V2fm] :
( mem(V2fm,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ! [V3x] : ap(f1922(A_27c,A_27b,A_27a,V1f,V0m,V2fm),V3x) = ap(ap(c_2Emin_2E_3D_3D_3E,ap(ap(c_2Ebool_2EIN(A_27a),V3x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V2fm))),ap(ap(c_2Emin_2E_3D(A_27c),ap(ap(c_2Efinite__map_2EFAPPLY(A_27b,A_27c),ap(ap(V0m,V1f),V2fm)),ap(V1f,V3x))),ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27c),V2fm),V3x))) ) ) ) ).
fof(lameq_f1923,axiom,
! [A_27b,A_27a,A_27c,V0m] :
( mem(V0m,arr(arr(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27c),ty_2Efinite__map_2Efmap(A_27b,A_27c))))
=> ! [V1f] :
( mem(V1f,arr(A_27a,A_27b))
=> ! [V2fm] : ap(f1923(A_27b,A_27a,A_27c,V0m,V1f),V2fm) = ap(ap(c_2Ebool_2E_2F_5C,ap(ap(c_2Emin_2E_3D(arr(A_27b,bool)),ap(c_2Efinite__map_2EFDOM(A_27b,A_27c),ap(ap(V0m,V1f),V2fm))),ap(ap(c_2Epred__set_2EIMAGE(A_27a,A_27b),V1f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V2fm)))),ap(ap(c_2Emin_2E_3D_3D_3E,ap(ap(ap(c_2Epred__set_2EINJ(A_27a,A_27b),V1f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V2fm)),c_2Epred__set_2EUNIV(A_27b))),ap(c_2Ebool_2E_21(A_27a),f1922(A_27c,A_27b,A_27a,V1f,V0m,V2fm)))) ) ) ).
fof(lameq_f1924,axiom,
! [A_27c,A_27a,A_27b,V0m] :
( mem(V0m,arr(arr(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27c),ty_2Efinite__map_2Efmap(A_27b,A_27c))))
=> ! [V1f] : ap(f1924(A_27c,A_27a,A_27b,V0m),V1f) = ap(c_2Ebool_2E_21(ty_2Efinite__map_2Efmap(A_27a,A_27c)),f1923(A_27b,A_27a,A_27c,V0m,V1f)) ) ).
fof(lameq_f1925,axiom,
! [A_27c,A_27b,A_27a,V0m] : ap(f1925(A_27c,A_27b,A_27a),V0m) = ap(c_2Ebool_2E_21(arr(A_27a,A_27b)),f1924(A_27c,A_27a,A_27b,V0m)) ).
fof(lameq_f1926,axiom,
! [A_27b,A_27a,A_27c,V4f] :
( mem(V4f,arr(A_27a,A_27b))
=> ! [V5fm] : ap(f1926(A_27b,A_27a,A_27c,V4f),V5fm) = ap(ap(ap(c_2Ebool_2ECOND(ty_2Efinite__map_2Efmap(A_27b,A_27c)),ap(ap(ap(c_2Epred__set_2EINJ(A_27a,A_27b),V4f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V5fm)),c_2Epred__set_2EUNIV(A_27b))),ap(ap(c_2Efinite__map_2Ef__o__f(A_27b,A_27a,A_27c),V5fm),ap(ap(c_2Efinite__map_2EFUN__FMAP(A_27b,A_27a),ap(ap(c_2Epred__set_2ELINV(A_27a,A_27b),V4f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V5fm))),ap(ap(c_2Epred__set_2EIMAGE(A_27a,A_27b),V4f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V5fm))))),ap(ap(c_2Efinite__map_2EFUN__FMAP(A_27b,A_27c),c_2Ebool_2EARB(arr(A_27b,A_27c))),ap(ap(c_2Epred__set_2EIMAGE(A_27a,A_27b),V4f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V5fm)))) ) ).
fof(lameq_f1927,axiom,
! [A_27c,A_27a,A_27b,V4f] : ap(f1927(A_27c,A_27a,A_27b),V4f) = f1926(A_27b,A_27a,A_27c,V4f) ).
fof(conj_thm_2Efinite__map_2EMAP__KEYS__witness,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> p(ap(ap(c_2Ebool_2ELET(arr(arr(A_27a,A_27b),arr(ty_2Efinite__map_2Efmap(A_27a,A_27c),ty_2Efinite__map_2Efmap(A_27b,A_27c))),bool),f1925(A_27c,A_27b,A_27a)),f1927(A_27c,A_27a,A_27b))) ) ) ) ).
fof(ax_thm_2Efinite__map_2EMAP__KEYS__def,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_27a,A_27c))
=> ( ap(c_2Efinite__map_2EFDOM(A_27b,A_27c),ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),V0f),V1fm)) = ap(ap(c_2Epred__set_2EIMAGE(A_27a,A_27b),V0f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1fm))
& ( p(ap(ap(ap(c_2Epred__set_2EINJ(A_27a,A_27b),V0f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1fm)),c_2Epred__set_2EUNIV(A_27b)))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1fm)))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27b,A_27c),ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),V0f),V1fm)),ap(V0f,V2x)) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27c),V1fm),V2x) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EMAP__KEYS__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),V0f),c_2Efinite__map_2EFEMPTY(A_27a,A_27c)) = c_2Efinite__map_2EFEMPTY(A_27b,A_27c) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EMAP__KEYS__FUPDATE,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_27a,A_27c))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3v] :
( mem(V3v,A_27c)
=> ( p(ap(ap(ap(c_2Epred__set_2EINJ(A_27a,A_27b),V0f),ap(ap(c_2Epred__set_2EINSERT(A_27a),V2k),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1fm))),c_2Epred__set_2EUNIV(A_27b)))
=> ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),V0f),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27c),V1fm),ap(ap(c_2Epair_2E_2C(A_27a,A_27c),V2k),V3v))) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27b,A_27c),ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),V0f),V1fm)),ap(ap(c_2Epair_2E_2C(A_27b,A_27c),ap(V0f,V2k)),V3v)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EMAP__KEYS__using__LINV,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_27a,A_27c))
=> ( p(ap(ap(ap(c_2Epred__set_2EINJ(A_27a,A_27b),V0f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1fm)),c_2Epred__set_2EUNIV(A_27b)))
=> ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),V0f),V1fm) = ap(ap(c_2Efinite__map_2Ef__o__f(A_27b,A_27a,A_27c),V1fm),ap(ap(c_2Efinite__map_2EFUN__FMAP(A_27b,A_27a),ap(ap(c_2Epred__set_2ELINV(A_27a,A_27b),V0f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1fm))),ap(ap(c_2Epred__set_2EIMAGE(A_27a,A_27b),V0f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1fm)))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EMAP__KEYS__BIJ__LINV,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [V0f] :
( mem(V0f,arr(ty_2Enum_2Enum,ty_2Enum_2Enum))
=> ! [V1t] :
( mem(V1t,ty_2Efinite__map_2Efmap(ty_2Enum_2Enum,A_27a))
=> ( p(ap(ap(ap(c_2Epred__set_2EBIJ(ty_2Enum_2Enum,ty_2Enum_2Enum),V0f),c_2Epred__set_2EUNIV(ty_2Enum_2Enum)),c_2Epred__set_2EUNIV(ty_2Enum_2Enum)))
=> ap(ap(c_2Efinite__map_2EMAP__KEYS(ty_2Enum_2Enum,ty_2Enum_2Enum,A_27a),V0f),ap(ap(c_2Efinite__map_2EMAP__KEYS(ty_2Enum_2Enum,ty_2Enum_2Enum,A_27a),ap(ap(c_2Epred__set_2ELINV(ty_2Enum_2Enum,ty_2Enum_2Enum),V0f),c_2Epred__set_2EUNIV(ty_2Enum_2Enum))),V1t)) = V1t ) ) ) ) ).
fof(lameq_f1928,axiom,
! [A_27c,A_27b,A_27a,V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ! [V2k] :
( mem(V2k,A_27b)
=> ! [V1m] :
( mem(V1m,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ! [V3x] : ap(f1928(A_27c,A_27b,A_27a,V0f,V2k,V1m),V3x) = ap(ap(c_2Ebool_2E_2F_5C,ap(ap(c_2Emin_2E_3D(A_27b),V2k),ap(V0f,V3x))),ap(ap(c_2Ebool_2EIN(A_27a),V3x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1m))) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFLOOKUP__MAP__KEYS,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ! [V1m] :
( mem(V1m,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ! [V2k] :
( mem(V2k,A_27b)
=> ( p(ap(ap(ap(c_2Epred__set_2EINJ(A_27a,A_27b),V0f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27c),V1m)),c_2Epred__set_2EUNIV(A_27b)))
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27c),ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),V0f),V1m)),V2k) = ap(ap(c_2Eoption_2EOPTION__BIND(A_27c,A_27a),ap(c_2Eoption_2Esome(A_27a),f1928(A_27c,A_27b,A_27a,V0f,V2k,V1m))),ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27c),V1m)) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFLOOKUP__MAP__KEYS__MAPPED,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27a,A_27b))
=> ! [V1m] :
( mem(V1m,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ( p(ap(ap(ap(c_2Epred__set_2EINJ(A_27a,A_27b),V0f),c_2Epred__set_2EUNIV(A_27a)),c_2Epred__set_2EUNIV(A_27b)))
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27c),ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),V0f),V1m)),ap(V0f,V2k)) = ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27c),V1m),V2k) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__MAP__KEYS__IMAGE,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_27a,A_27c))
=> ! [V2s] :
( mem(V2s,arr(A_27a,bool))
=> ( p(ap(ap(ap(c_2Epred__set_2EINJ(A_27a,A_27b),V0f),c_2Epred__set_2EUNIV(A_27a)),c_2Epred__set_2EUNIV(A_27b)))
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27b,A_27c),ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),V0f),V1fm)),ap(ap(c_2Epred__set_2EIMAGE(A_27a,A_27b),V0f),V2s)) = ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),V0f),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27c),V1fm),V2s)) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__MAP__KEYS,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_27a,A_27c))
=> ! [V2s] :
( mem(V2s,A_27a)
=> ( p(ap(ap(ap(c_2Epred__set_2EBIJ(A_27a,A_27b),V0f),c_2Epred__set_2EUNIV(A_27a)),c_2Epred__set_2EUNIV(A_27b)))
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27b,A_27c),ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),V0f),V1fm)),ap(V0f,V2s)) = ap(ap(c_2Efinite__map_2EMAP__KEYS(A_27a,A_27b,A_27c),V0f),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27c),V1fm),V2s)) ) ) ) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2Efmap__rel__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27b,bool)))
=> ! [V1f1] :
( mem(V1f1,ty_2Efinite__map_2Efmap(A_27c,A_27a))
=> ! [V2f2] :
( mem(V2f2,ty_2Efinite__map_2Efmap(A_27c,A_27b))
=> ( p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),V1f1),V2f2))
<=> ( ap(c_2Efinite__map_2EFDOM(A_27c,A_27b),V2f2) = ap(c_2Efinite__map_2EFDOM(A_27c,A_27a),V1f1)
& ! [V3x] :
( mem(V3x,A_27c)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27c),V3x),ap(c_2Efinite__map_2EFDOM(A_27c,A_27a),V1f1)))
=> p(ap(ap(V0R,ap(ap(c_2Efinite__map_2EFAPPLY(A_27c,A_27a),V1f1),V3x)),ap(ap(c_2Efinite__map_2EFAPPLY(A_27c,A_27b),V2f2),V3x))) ) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__rel__FUPDATE__same,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27b,bool)))
=> ! [V1f1] :
( mem(V1f1,ty_2Efinite__map_2Efmap(A_27c,A_27a))
=> ! [V2f2] :
( mem(V2f2,ty_2Efinite__map_2Efmap(A_27c,A_27b))
=> ! [V3v1] :
( mem(V3v1,A_27a)
=> ! [V4v2] :
( mem(V4v2,A_27b)
=> ! [V5k] :
( mem(V5k,A_27c)
=> ( ( p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),V1f1),V2f2))
& p(ap(ap(V0R,V3v1),V4v2)) )
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),ap(ap(c_2Efinite__map_2EFUPDATE(A_27c,A_27a),V1f1),ap(ap(c_2Epair_2E_2C(A_27c,A_27a),V5k),V3v1))),ap(ap(c_2Efinite__map_2EFUPDATE(A_27c,A_27b),V2f2),ap(ap(c_2Epair_2E_2C(A_27c,A_27b),V5k),V4v2)))) ) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__rel__FUPDATE__LIST__same,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27b,bool)))
=> ! [V1ls1] :
( mem(V1ls1,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27c,A_27a)))
=> ! [V2ls2] :
( mem(V2ls2,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27c,A_27b)))
=> ! [V3f1] :
( mem(V3f1,ty_2Efinite__map_2Efmap(A_27c,A_27a))
=> ! [V4f2] :
( mem(V4f2,ty_2Efinite__map_2Efmap(A_27c,A_27b))
=> ( ( p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),V3f1),V4f2))
& ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27c,A_27a),A_27c),c_2Epair_2EFST(A_27c,A_27a)),V1ls1) = ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27c,A_27b),A_27c),c_2Epair_2EFST(A_27c,A_27b)),V2ls2)
& p(ap(ap(ap(c_2Elist_2ELIST__REL(A_27a,A_27b),V0R),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27c,A_27a),A_27a),c_2Epair_2ESND(A_27c,A_27a)),V1ls1)),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27c,A_27b),A_27b),c_2Epair_2ESND(A_27c,A_27b)),V2ls2))) )
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27c,A_27a),V3f1),V1ls1)),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27c,A_27b),V4f2),V2ls2))) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__rel__FEMPTY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27b,bool)))
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),c_2Efinite__map_2EFEMPTY(A_27c,A_27a)),c_2Efinite__map_2EFEMPTY(A_27c,A_27b))) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__rel__FEMPTY2,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27a,bool)))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ( ( p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27a,A_27b),V0R),c_2Efinite__map_2EFEMPTY(A_27b,A_27a)),V1f))
<=> V1f = c_2Efinite__map_2EFEMPTY(A_27b,A_27a) )
& ( p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27a,A_27b),V0R),V1f),c_2Efinite__map_2EFEMPTY(A_27b,A_27a)))
<=> V1f = c_2Efinite__map_2EFEMPTY(A_27b,A_27a) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__rel__refl,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27a,bool)))
=> ! [V1x] :
( mem(V1x,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ( ! [V2x] :
( mem(V2x,A_27a)
=> p(ap(ap(V0R,V2x),V2x)) )
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27a,A_27b),V0R),V1x),V1x)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__rel__FUNION__rels,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27b,bool)))
=> ! [V1f1] :
( mem(V1f1,ty_2Efinite__map_2Efmap(A_27c,A_27a))
=> ! [V2f2] :
( mem(V2f2,ty_2Efinite__map_2Efmap(A_27c,A_27b))
=> ! [V3f3] :
( mem(V3f3,ty_2Efinite__map_2Efmap(A_27c,A_27a))
=> ! [V4f4] :
( mem(V4f4,ty_2Efinite__map_2Efmap(A_27c,A_27b))
=> ( ( p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),V1f1),V2f2))
& p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),V3f3),V4f4)) )
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),ap(ap(c_2Efinite__map_2EFUNION(A_27c,A_27a),V1f1),V3f3)),ap(ap(c_2Efinite__map_2EFUNION(A_27c,A_27b),V2f2),V4f4))) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__rel__FUPDATE__I,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27b,bool)))
=> ! [V1f1] :
( mem(V1f1,ty_2Efinite__map_2Efmap(A_27c,A_27a))
=> ! [V2k] :
( mem(V2k,A_27c)
=> ! [V3f2] :
( mem(V3f2,ty_2Efinite__map_2Efmap(A_27c,A_27b))
=> ! [V4v1] :
( mem(V4v1,A_27a)
=> ! [V5v2] :
( mem(V5v2,A_27b)
=> ( ( p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),ap(ap(c_2Efinite__map_2Efdomsub(A_27c,A_27a),V1f1),V2k)),ap(ap(c_2Efinite__map_2Efdomsub(A_27c,A_27b),V3f2),V2k)))
& p(ap(ap(V0R,V4v1),V5v2)) )
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),ap(ap(c_2Efinite__map_2EFUPDATE(A_27c,A_27a),V1f1),ap(ap(c_2Epair_2E_2C(A_27c,A_27a),V2k),V4v1))),ap(ap(c_2Efinite__map_2EFUPDATE(A_27c,A_27b),V3f2),ap(ap(c_2Epair_2E_2C(A_27c,A_27b),V2k),V5v2)))) ) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__rel__mono,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0R1] :
( mem(V0R1,arr(A_27a,arr(A_27b,bool)))
=> ! [V1R2] :
( mem(V1R2,arr(A_27a,arr(A_27b,bool)))
=> ! [V2f1] :
( mem(V2f1,ty_2Efinite__map_2Efmap(A_27c,A_27a))
=> ! [V3f2] :
( mem(V3f2,ty_2Efinite__map_2Efmap(A_27c,A_27b))
=> ( ! [V4x] :
( mem(V4x,A_27a)
=> ! [V5y] :
( mem(V5y,A_27b)
=> ( p(ap(ap(V0R1,V4x),V5y))
=> p(ap(ap(V1R2,V4x),V5y)) ) ) )
=> ( p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R1),V2f1),V3f2))
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V1R2),V2f1),V3f2)) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__rel__OPTREL__FLOOKUP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27b,bool)))
=> ! [V1f1] :
( mem(V1f1,ty_2Efinite__map_2Efmap(A_27c,A_27a))
=> ! [V2f2] :
( mem(V2f2,ty_2Efinite__map_2Efmap(A_27c,A_27b))
=> ( p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),V1f1),V2f2))
<=> ! [V3k] :
( mem(V3k,A_27c)
=> p(ap(ap(ap(c_2Eoption_2EOPTREL(A_27a,A_27b),V0R),ap(ap(c_2Efinite__map_2EFLOOKUP(A_27c,A_27a),V1f1),V3k)),ap(ap(c_2Efinite__map_2EFLOOKUP(A_27c,A_27b),V2f2),V3k))) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__rel__FLOOKUP__imp,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27b,bool)))
=> ! [V1f1] :
( mem(V1f1,ty_2Efinite__map_2Efmap(A_27c,A_27a))
=> ! [V2f2] :
( mem(V2f2,ty_2Efinite__map_2Efmap(A_27c,A_27b))
=> ( p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27b,A_27c),V0R),V1f1),V2f2))
=> ( ! [V3k] :
( mem(V3k,A_27c)
=> ( ap(ap(c_2Efinite__map_2EFLOOKUP(A_27c,A_27a),V1f1),V3k) = c_2Eoption_2ENONE(A_27a)
=> ap(ap(c_2Efinite__map_2EFLOOKUP(A_27c,A_27b),V2f2),V3k) = c_2Eoption_2ENONE(A_27b) ) )
& ! [V4k] :
( mem(V4k,A_27c)
=> ! [V5v1] :
( mem(V5v1,A_27a)
=> ( ap(ap(c_2Efinite__map_2EFLOOKUP(A_27c,A_27a),V1f1),V4k) = ap(c_2Eoption_2ESOME(A_27a),V5v1)
=> ? [V6v2] :
( mem(V6v2,A_27b)
& ap(ap(c_2Efinite__map_2EFLOOKUP(A_27c,A_27b),V2f2),V4k) = ap(c_2Eoption_2ESOME(A_27b),V6v2)
& p(ap(ap(V0R,V5v1),V6v2)) ) ) ) ) ) ) ) ) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2Efmap__EQ__UPTO__def,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))
=> ! [V2vs] :
( mem(V2vs,arr(A_27a,bool))
=> ( p(ap(ap(ap(c_2Efinite__map_2Efmap__EQ__UPTO(A_27a,A_27b),V0f1),V1f2),V2vs))
<=> ( ap(ap(c_2Epred__set_2EINTER(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)),ap(c_2Epred__set_2ECOMPL(A_27a),V2vs)) = ap(ap(c_2Epred__set_2EINTER(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1f2)),ap(c_2Epred__set_2ECOMPL(A_27a),V2vs))
& ! [V3x] :
( mem(V3x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3x),ap(ap(c_2Epred__set_2EINTER(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)),ap(c_2Epred__set_2ECOMPL(A_27a),V2vs))))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f1),V3x) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1f2),V3x) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__EQ__UPTO______EMPTY,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))
=> ( p(ap(ap(ap(c_2Efinite__map_2Efmap__EQ__UPTO(A_27a,A_27b),V0f1),V1f2),c_2Epred__set_2EEMPTY(A_27a)))
<=> V0f1 = V1f2 ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__EQ__UPTO______EQ,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0vs] :
( mem(V0vs,arr(A_27a,bool))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__EQ__UPTO(A_27a,A_27b),V1f),V1f),V0vs)) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__EQ__UPTO______FUPDATE__BOTH,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))
=> ! [V2ks] :
( mem(V2ks,arr(A_27a,bool))
=> ! [V3k] :
( mem(V3k,A_27a)
=> ! [V4v] :
( mem(V4v,A_27b)
=> ( p(ap(ap(ap(c_2Efinite__map_2Efmap__EQ__UPTO(A_27a,A_27b),V0f1),V1f2),V2ks))
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__EQ__UPTO(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f1),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3k),V4v))),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1f2),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3k),V4v))),ap(ap(c_2Epred__set_2EDELETE(A_27a),V2ks),V3k))) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__EQ__UPTO______FUPDATE__BOTH______NO__DELETE,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))
=> ! [V2ks] :
( mem(V2ks,arr(A_27a,bool))
=> ! [V3k] :
( mem(V3k,A_27a)
=> ! [V4v] :
( mem(V4v,A_27b)
=> ( p(ap(ap(ap(c_2Efinite__map_2Efmap__EQ__UPTO(A_27a,A_27b),V0f1),V1f2),V2ks))
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__EQ__UPTO(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f1),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3k),V4v))),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1f2),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3k),V4v))),V2ks)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__EQ__UPTO______FUPDATE__SING,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))
=> ! [V2ks] :
( mem(V2ks,arr(A_27a,bool))
=> ! [V3k] :
( mem(V3k,A_27a)
=> ! [V4v] :
( mem(V4v,A_27b)
=> ( p(ap(ap(ap(c_2Efinite__map_2Efmap__EQ__UPTO(A_27a,A_27b),V0f1),V1f2),V2ks))
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__EQ__UPTO(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f1),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3k),V4v))),V1f2),ap(ap(c_2Epred__set_2EINSERT(A_27a),V3k),V2ks))) ) ) ) ) ) ) ) ) ).
fof(lameq_f1929,axiom,
! [A_27b,A_27a,V1vz] :
( mem(V1vz,arr(A_27b,ty_2Enum_2Enum))
=> ! [V2fm] :
( mem(V2fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V0kz] :
( mem(V0kz,arr(A_27a,ty_2Enum_2Enum))
=> ! [V3k] : ap(f1929(A_27b,A_27a,V1vz,V2fm,V0kz),V3k) = ap(ap(c_2Earithmetic_2E_2B,ap(V0kz,V3k)),ap(V1vz,ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V2fm),V3k))) ) ) ) ).
fof(ax_thm_2Efinite__map_2Efmap__size__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0kz] :
( mem(V0kz,arr(A_27a,ty_2Enum_2Enum))
=> ! [V1vz] :
( mem(V1vz,arr(A_27b,ty_2Enum_2Enum))
=> ! [V2fm] :
( mem(V2fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(ap(c_2Efinite__map_2Efmap__size(A_27a,A_27b),V0kz),V1vz),V2fm) = ap(ap(c_2Epred__set_2ESUM__IMAGE(A_27a),f1929(A_27b,A_27a,V1vz,V2fm,V0kz)),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V2fm)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eo__f__FUNION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f] :
( mem(V0f,arr(A_27c,A_27b))
=> ! [V1f1] :
( mem(V1f1,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ! [V2f2] :
( mem(V2f2,ty_2Efinite__map_2Efmap(A_27a,A_27c))
=> ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27c,A_27b),V0f),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27c),V1f1),V2f2)) = ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27c,A_27b),V0f),V1f1)),ap(ap(c_2Efinite__map_2Eo__f(A_27a,A_27c,A_27b),V0f),V2f2)) ) ) ) ) ) ) ).
fof(lameq_f1930,axiom,
! [A_27b,A_27a,V2k] :
( mem(V2k,A_27a)
=> ! [V3m] : ap(f1930(A_27b,A_27a,V2k),V3m) = ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V3m),V2k) ) ).
fof(lameq_f1931,axiom,
! [A_27b,A_27a,V2k] : ap(f1931(A_27b,A_27a),V2k) = f1930(A_27b,A_27a,V2k) ).
fof(conj_thm_2Efinite__map_2EFDOM__FOLDR__DOMSUB,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls] :
( mem(V0ls,ty_2Elist_2Elist(A_27a))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(ap(c_2Elist_2EFOLDR(A_27a,ty_2Efinite__map_2Efmap(A_27a,A_27b)),f1931(A_27b,A_27a)),V1fm),V0ls)) = ap(ap(c_2Epred__set_2EDIFF(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1fm)),ap(c_2Elist_2ELIST__TO__SET(A_27a),V0ls)) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFEVERY__SUBMAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Epair_2Eprod(A_27a,A_27b),bool))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2fm0] :
( mem(V2fm0,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),V1fm))
& p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V2fm0),V1fm)) )
=> p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),V2fm0)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFEVERY__ALL__FLOOKUP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Epair_2Eprod(A_27a,A_27b),bool))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),V1f))
<=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3v] :
( mem(V3v,A_27b)
=> ( ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V1f),V2k) = ap(c_2Eoption_2ESOME(A_27b),V3v)
=> p(ap(V0P,ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V3v))) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__CANCEL,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls1] :
( mem(V0ls1,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2ls2] :
( mem(V2ls2,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ( ! [V3k] :
( mem(V3k,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3k),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)),V0ls1))))
=> p(ap(ap(c_2Ebool_2EIN(A_27a),V3k),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)),V2ls2)))) ) )
=> ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1fm),V0ls1)),V2ls2) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1fm),V2ls2) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__EQ__FUNION,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1kv] :
( mem(V1kv,ty_2Epair_2Eprod(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0fm),V1kv) = ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V1kv)),V0fm) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__APPEND__COMMUTES,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)))
=> ! [V2fm] :
( mem(V2fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Epred__set_2EDISJOINT(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)),V0l1))),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)),V1l2))))
=> ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V2fm),V0l1)),V1l2) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V2fm),V1l2)),V0l1) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EIMAGE__FRANGE,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_2Epred__set_2EIMAGE(A_27a,A_27b),V0f),ap(c_2Efinite__map_2EFRANGE(A_27c,A_27a),V1fm)) = ap(c_2Efinite__map_2EFRANGE(A_27c,A_27b),ap(ap(c_2Efinite__map_2Eo__f(A_27c,A_27a,A_27b),V0f),V1fm)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__mono__FUPDATE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27b)
=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0f),V2x)),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V1g),V2x)))
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y))),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V1g),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2x),V3y)))) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2ESUBMAP__DOMSUB__gen,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0f),V2k)),V1g))
<=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V0f),V2k)),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V1g),V2k))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDOMSUB__SUBMAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ( ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),V1g))
& ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f))) )
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),V1g),V2x))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__DOMSUB,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1s] :
( mem(V1s,arr(A_27a,bool))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ap(ap(c_2Efinite__map_2Efdomsub(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),V1s)),V2k) = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),ap(ap(c_2Epred__set_2EDELETE(A_27a),V1s),V2k)) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__SUBSET__SUBMAP__gen,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))
=> ! [V2s] :
( mem(V2s,arr(A_27a,bool))
=> ! [V3t] :
( mem(V3t,arr(A_27a,bool))
=> ( ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f1),V2s)),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1f2),V2s)))
& p(ap(ap(c_2Epred__set_2ESUBSET(A_27a),V3t),V2s)) )
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f1),V3t)),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1f2),V3t))) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__FUNION__SAME,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1s] :
( mem(V1s,arr(A_27a,bool))
=> ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0fm),V1s)),V0fm) = V0fm ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__EQ__DRESTRICT__SAME,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f1] :
( mem(V0f1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1s] :
( mem(V1s,arr(A_27a,bool))
=> ! [V2f2] :
( mem(V2f2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f1),V1s) = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V2f2),V1s)
<=> ( ap(ap(c_2Epred__set_2EINTER(A_27a),V1s),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)) = ap(ap(c_2Epred__set_2EINTER(A_27a),V1s),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V2f2))
& ! [V3x] :
( mem(V3x,A_27a)
=> ( ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)))
& p(ap(ap(c_2Ebool_2EIN(A_27a),V3x),V1s)) )
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f1),V3x) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V2f2),V3x) ) ) ) ) ) ) ) ) ) ).
fof(lameq_f1932,axiom,
! [A_27d,A_27c,A_27a,A_27b,V1f2] :
( mem(V1f2,arr(A_27a,arr(A_27b,A_27d)))
=> ! [V6b] :
( mem(V6b,A_27a)
=> ! [V0f1] :
( mem(V0f1,arr(A_27a,arr(A_27b,A_27c)))
=> ! [V5fm] :
( mem(V5fm,ty_2Efinite__map_2Efmap(A_27c,A_27d))
=> ! [V7c] : ap(f1932(A_27d,A_27c,A_27a,A_27b,V1f2,V6b,V0f1,V5fm),V7c) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27c,A_27d),V5fm),ap(ap(c_2Epair_2E_2C(A_27c,A_27d),ap(ap(V0f1,V6b),V7c)),ap(ap(V1f2,V6b),V7c))) ) ) ) ) ).
fof(lameq_f1933,axiom,
! [A_27b,A_27c,A_27d,A_27a,V1f2] :
( mem(V1f2,arr(A_27a,arr(A_27b,A_27d)))
=> ! [V0f1] :
( mem(V0f1,arr(A_27a,arr(A_27b,A_27c)))
=> ! [V5fm] :
( mem(V5fm,ty_2Efinite__map_2Efmap(A_27c,A_27d))
=> ! [V6b] : ap(f1933(A_27b,A_27c,A_27d,A_27a,V1f2,V0f1,V5fm),V6b) = f1932(A_27d,A_27c,A_27a,A_27b,V1f2,V6b,V0f1,V5fm) ) ) ) ).
fof(lameq_f1934,axiom,
! [A_27a,A_27b,A_27c,A_27d,V1f2] :
( mem(V1f2,arr(A_27a,arr(A_27b,A_27d)))
=> ! [V0f1] :
( mem(V0f1,arr(A_27a,arr(A_27b,A_27c)))
=> ! [V5fm] : ap(f1934(A_27a,A_27b,A_27c,A_27d,V1f2,V0f1),V5fm) = f1933(A_27b,A_27c,A_27d,A_27a,V1f2,V0f1,V5fm) ) ) ).
fof(conj_thm_2Efinite__map_2EFOLDL2__FUPDATE__LIST,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,arr(A_27b,A_27c)))
=> ! [V1f2] :
( mem(V1f2,arr(A_27a,arr(A_27b,A_27d)))
=> ! [V2bs] :
( mem(V2bs,ty_2Elist_2Elist(A_27a))
=> ! [V3cs] :
( mem(V3cs,ty_2Elist_2Elist(A_27b))
=> ! [V4a] :
( mem(V4a,ty_2Efinite__map_2Efmap(A_27c,A_27d))
=> ( ap(c_2Elist_2ELENGTH(A_27a),V2bs) = ap(c_2Elist_2ELENGTH(A_27b),V3cs)
=> ap(ap(ap(ap(c_2Elist_2EFOLDL2(ty_2Efinite__map_2Efmap(A_27c,A_27d),A_27a,A_27b),f1934(A_27a,A_27b,A_27c,A_27d,V1f2,V0f1)),V4a),V2bs),V3cs) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27c,A_27d),V4a),ap(c_2Elist_2EZIP(A_27c,A_27d),ap(ap(c_2Epair_2E_2C(ty_2Elist_2Elist(A_27c),ty_2Elist_2Elist(A_27d)),ap(ap(ap(c_2Elist_2EMAP2(A_27c,A_27a,A_27b),V0f1),V2bs),V3cs)),ap(ap(ap(c_2Elist_2EMAP2(A_27d,A_27a,A_27b),V1f2),V2bs),V3cs)))) ) ) ) ) ) ) ) ) ) ) ).
fof(lameq_f1935,axiom,
! [A_27e,A_27d,A_27b,A_27a,A_27c,V6b] :
( mem(V6b,A_27a)
=> ! [V1f2] :
( mem(V1f2,arr(A_27a,arr(A_27b,arr(A_27c,A_27e))))
=> ! [V7c] :
( mem(V7c,A_27b)
=> ! [V0f1] :
( mem(V0f1,arr(A_27a,arr(A_27b,arr(A_27c,A_27d))))
=> ! [V5fm] :
( mem(V5fm,ty_2Efinite__map_2Efmap(A_27d,A_27e))
=> ! [V8d] : ap(f1935(A_27e,A_27d,A_27b,A_27a,A_27c,V6b,V1f2,V7c,V0f1,V5fm),V8d) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27d,A_27e),V5fm),ap(ap(c_2Epair_2E_2C(A_27d,A_27e),ap(ap(ap(V0f1,V6b),V7c),V8d)),ap(ap(ap(V1f2,V6b),V7c),V8d))) ) ) ) ) ) ).
fof(lameq_f1936,axiom,
! [A_27c,A_27a,A_27d,A_27e,A_27b,V6b] :
( mem(V6b,A_27a)
=> ! [V1f2] :
( mem(V1f2,arr(A_27a,arr(A_27b,arr(A_27c,A_27e))))
=> ! [V0f1] :
( mem(V0f1,arr(A_27a,arr(A_27b,arr(A_27c,A_27d))))
=> ! [V5fm] :
( mem(V5fm,ty_2Efinite__map_2Efmap(A_27d,A_27e))
=> ! [V7c] : ap(f1936(A_27c,A_27a,A_27d,A_27e,A_27b,V6b,V1f2,V0f1,V5fm),V7c) = f1935(A_27e,A_27d,A_27b,A_27a,A_27c,V6b,V1f2,V7c,V0f1,V5fm) ) ) ) ) ).
fof(lameq_f1937,axiom,
! [A_27b,A_27d,A_27e,A_27c,A_27a,V5fm] :
( mem(V5fm,ty_2Efinite__map_2Efmap(A_27d,A_27e))
=> ! [V0f1] :
( mem(V0f1,arr(A_27a,arr(A_27b,arr(A_27c,A_27d))))
=> ! [V1f2] :
( mem(V1f2,arr(A_27a,arr(A_27b,arr(A_27c,A_27e))))
=> ! [V6b] : ap(f1937(A_27b,A_27d,A_27e,A_27c,A_27a,V5fm,V0f1,V1f2),V6b) = ap(c_2Epair_2EUNCURRY(A_27b,A_27c,ty_2Efinite__map_2Efmap(A_27d,A_27e)),f1936(A_27c,A_27a,A_27d,A_27e,A_27b,V6b,V1f2,V0f1,V5fm)) ) ) ) ).
fof(lameq_f1938,axiom,
! [A_27a,A_27c,A_27b,A_27d,A_27e,V0f1] :
( mem(V0f1,arr(A_27a,arr(A_27b,arr(A_27c,A_27d))))
=> ! [V1f2] :
( mem(V1f2,arr(A_27a,arr(A_27b,arr(A_27c,A_27e))))
=> ! [V5fm] : ap(f1938(A_27a,A_27c,A_27b,A_27d,A_27e,V0f1,V1f2),V5fm) = f1937(A_27b,A_27d,A_27e,A_27c,A_27a,V5fm,V0f1,V1f2) ) ) ).
fof(lameq_f1939,axiom,
! [A_27b,A_27d,A_27c,A_27a,V0f1] :
( mem(V0f1,arr(A_27a,arr(A_27b,arr(A_27c,A_27d))))
=> ! [V9b] : ap(f1939(A_27b,A_27d,A_27c,A_27a,V0f1),V9b) = ap(c_2Epair_2EUNCURRY(A_27b,A_27c,A_27d),ap(V0f1,V9b)) ) ).
fof(lameq_f1940,axiom,
! [A_27b,A_27e,A_27c,A_27a,V1f2] :
( mem(V1f2,arr(A_27a,arr(A_27b,arr(A_27c,A_27e))))
=> ! [V10b] : ap(f1940(A_27b,A_27e,A_27c,A_27a,V1f2),V10b) = ap(c_2Epair_2EUNCURRY(A_27b,A_27c,A_27e),ap(V1f2,V10b)) ) ).
fof(conj_thm_2Efinite__map_2EFOLDL2__FUPDATE__LIST__paired,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [A_27d] :
( ne(A_27d)
=> ! [A_27e] :
( ne(A_27e)
=> ! [V0f1] :
( mem(V0f1,arr(A_27a,arr(A_27b,arr(A_27c,A_27d))))
=> ! [V1f2] :
( mem(V1f2,arr(A_27a,arr(A_27b,arr(A_27c,A_27e))))
=> ! [V2bs] :
( mem(V2bs,ty_2Elist_2Elist(A_27a))
=> ! [V3cs] :
( mem(V3cs,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27c)))
=> ! [V4a] :
( mem(V4a,ty_2Efinite__map_2Efmap(A_27d,A_27e))
=> ( ap(c_2Elist_2ELENGTH(A_27a),V2bs) = ap(c_2Elist_2ELENGTH(ty_2Epair_2Eprod(A_27b,A_27c)),V3cs)
=> ap(ap(ap(ap(c_2Elist_2EFOLDL2(ty_2Efinite__map_2Efmap(A_27d,A_27e),A_27a,ty_2Epair_2Eprod(A_27b,A_27c)),f1938(A_27a,A_27c,A_27b,A_27d,A_27e,V0f1,V1f2)),V4a),V2bs),V3cs) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27d,A_27e),V4a),ap(c_2Elist_2EZIP(A_27d,A_27e),ap(ap(c_2Epair_2E_2C(ty_2Elist_2Elist(A_27d),ty_2Elist_2Elist(A_27e)),ap(ap(ap(c_2Elist_2EMAP2(A_27d,A_27a,ty_2Epair_2Eprod(A_27b,A_27c)),f1939(A_27b,A_27d,A_27c,A_27a,V0f1)),V2bs),V3cs)),ap(ap(ap(c_2Elist_2EMAP2(A_27e,A_27a,ty_2Epair_2Eprod(A_27b,A_27c)),f1940(A_27b,A_27e,A_27c,A_27a,V1f2)),V2bs),V3cs)))) ) ) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__FUNION__SUBSET,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0s2] :
( mem(V0s2,arr(A_27a,bool))
=> ! [V1s1] :
( mem(V1s1,arr(A_27a,bool))
=> ! [V2f] :
( mem(V2f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V3g] :
( mem(V3g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Epred__set_2ESUBSET(A_27a),V0s2),V1s1))
=> ? [V4h] :
( mem(V4h,ty_2Efinite__map_2Efmap(A_27a,A_27b))
& ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V2f),V1s1)),V3g) = ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V2f),V0s2)),V4h) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__APPLY__NOT__MEM__matchable,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0kvl] :
( mem(V0kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V3v] :
( mem(V3v,A_27b)
=> ( ( ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V2k),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)),V0kvl))))
& V3v = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V1f),V2k) )
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1f),V0kvl)),V2k) = V3v ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__APPLY__HO__THM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(A_27a,bool))
=> ! [V1f] :
( mem(V1f,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V2kvl] :
( mem(V2kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> ! [V3k] :
( mem(V3k,A_27b)
=> ( ( ? [V4n] :
( mem(V4n,ty_2Enum_2Enum)
& p(ap(ap(c_2Eprim__rec_2E_3C,V4n),ap(c_2Elist_2ELENGTH(ty_2Epair_2Eprod(A_27b,A_27a)),V2kvl)))
& V3k = ap(ap(c_2Elist_2EEL(A_27b),V4n),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27b,A_27a),A_27b),c_2Epair_2EFST(A_27b,A_27a)),V2kvl))
& p(ap(V0P,ap(ap(c_2Elist_2EEL(A_27a),V4n),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27b,A_27a),A_27a),c_2Epair_2ESND(A_27b,A_27a)),V2kvl))))
& ! [V5m] :
( mem(V5m,ty_2Enum_2Enum)
=> ( ( p(ap(ap(c_2Eprim__rec_2E_3C,V4n),V5m))
& p(ap(ap(c_2Eprim__rec_2E_3C,V5m),ap(c_2Elist_2ELENGTH(ty_2Epair_2Eprod(A_27b,A_27a)),V2kvl))) )
=> ap(ap(c_2Elist_2EEL(A_27b),V5m),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27b,A_27a),A_27b),c_2Epair_2EFST(A_27b,A_27a)),V2kvl)) != V3k ) ) )
| ( ~ p(ap(ap(c_2Ebool_2EIN(A_27b),V3k),ap(c_2Elist_2ELIST__TO__SET(A_27b),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27b,A_27a),A_27b),c_2Epair_2EFST(A_27b,A_27a)),V2kvl))))
& p(ap(V0P,ap(ap(c_2Efinite__map_2EFAPPLY(A_27b,A_27a),V1f),V3k))) ) )
=> p(ap(V0P,ap(ap(c_2Efinite__map_2EFAPPLY(A_27b,A_27a),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27b,A_27a),V1f),V2kvl)),V3k))) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__SAME__APPLY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0x] :
( mem(V0x,A_27a)
=> ! [V1kv] :
( mem(V1kv,ty_2Epair_2Eprod(A_27a,A_27b))
=> ! [V2fm1] :
( mem(V2fm1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V3fm2] :
( mem(V3fm2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( V0x = ap(c_2Epair_2EFST(A_27a,A_27b),V1kv)
| ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V2fm1),V0x) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V3fm2),V0x) )
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V2fm1),V1kv)),V0x) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V3fm2),V1kv)),V0x) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__SAME__LIST__APPLY,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0kvl] :
( mem(V0kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1fm1] :
( mem(V1fm1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2fm2] :
( mem(V2fm2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V3x] :
( mem(V3x,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3x),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)),V0kvl))))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1fm1),V0kvl)),V3x) = ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V2fm2),V0kvl)),V3x) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__ALL__DISTINCT__APPLY__MEM,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_27b,A_27a)))
=> ! [V2k] :
( mem(V2k,A_27b)
=> ! [V3v] :
( mem(V3v,A_27a)
=> ! [V4fm] :
( mem(V4fm,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ( ( p(ap(c_2Elist_2EALL__DISTINCT(A_27b),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27b,A_27a),A_27b),c_2Epair_2EFST(A_27b,A_27a)),V1ls)))
& 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)),V1ls)))
& p(ap(V0P,V3v)) )
=> p(ap(V0P,ap(ap(c_2Efinite__map_2EFAPPLY(A_27b,A_27a),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27b,A_27a),V4fm),V1ls)),V2k))) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__ALL__DISTINCT__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)))
=> ( 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)))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1fm),ap(c_2Elist_2EREVERSE(ty_2Epair_2Eprod(A_27a,A_27b)),V0ls)) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1fm),V0ls) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EIN__FRANGE,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1v] :
( mem(V1v,A_27b)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27b),V1v),ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),V0f)))
<=> ? [V2k] :
( mem(V2k,A_27a)
& p(ap(ap(c_2Ebool_2EIN(A_27a),V2k),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)))
& ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V2k) = V1v ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EIN__FRANGE__FLOOKUP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1v] :
( mem(V1v,A_27b)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27b),V1v),ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),V0f)))
<=> ? [V2k] :
( mem(V2k,A_27a)
& ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0f),V2k) = ap(c_2Eoption_2ESOME(A_27b),V1v) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFRANGE__FUPDATE__LIST__SUBSET,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))
=> p(ap(ap(c_2Epred__set_2ESUBSET(A_27b),ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1fm),V0ls))),ap(ap(c_2Epred__set_2EUNION(A_27b),ap(c_2Efinite__map_2EFRANGE(A_27a,A_27b),V1fm)),ap(c_2Elist_2ELIST__TO__SET(A_27b),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),A_27b),c_2Epair_2ESND(A_27a,A_27b)),V0ls))))) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EIN__FRANGE__FUPDATE__LIST__suff,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V1P] :
( mem(V1P,arr(A_27a,bool))
=> ! [V2ls] :
( mem(V2ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27b,A_27a)))
=> ( ( ! [V3v] :
( mem(V3v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V0fm)))
=> p(ap(V1P,V3v)) ) )
& ! [V4v] :
( mem(V4v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V4v),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)),V2ls))))
=> p(ap(V1P,V4v)) ) ) )
=> ! [V5v] :
( mem(V5v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V5v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27b,A_27a),V0fm),V2ls))))
=> p(ap(V1P,V5v)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFRANGE__FUNION__SUBSET,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f1] :
( mem(V0f1,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V1f2] :
( mem(V1f2,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> p(ap(ap(c_2Epred__set_2ESUBSET(A_27a),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),ap(ap(c_2Efinite__map_2EFUNION(A_27b,A_27a),V0f1),V1f2))),ap(ap(c_2Epred__set_2EUNION(A_27a),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V0f1)),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V1f2)))) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EIN__FRANGE__FUNION__suff,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f1] :
( mem(V0f1,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V1P] :
( mem(V1P,arr(A_27a,bool))
=> ! [V2f2] :
( mem(V2f2,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ( ( ! [V3v] :
( mem(V3v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V0f1)))
=> p(ap(V1P,V3v)) ) )
& ! [V4v] :
( mem(V4v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V4v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V2f2)))
=> p(ap(V1P,V4v)) ) ) )
=> ! [V5v] :
( mem(V5v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V5v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),ap(ap(c_2Efinite__map_2EFUNION(A_27b,A_27a),V0f1),V2f2))))
=> p(ap(V1P,V5v)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFRANGE__DOMSUB__SUBSET,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V1k] :
( mem(V1k,A_27b)
=> p(ap(ap(c_2Epred__set_2ESUBSET(A_27a),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),ap(ap(c_2Efinite__map_2Efdomsub(A_27b,A_27a),V0fm),V1k))),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V0fm))) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EIN__FRANGE__DOMSUB__suff,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V1P] :
( mem(V1P,arr(A_27a,bool))
=> ! [V2k] :
( mem(V2k,A_27b)
=> ( ! [V3v] :
( mem(V3v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V0fm)))
=> p(ap(V1P,V3v)) ) )
=> ! [V4v] :
( mem(V4v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V4v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),ap(ap(c_2Efinite__map_2Efdomsub(A_27b,A_27a),V0fm),V2k))))
=> p(ap(V1P,V4v)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EIN__FRANGE__DRESTRICT__suff,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V1P] :
( mem(V1P,arr(A_27a,bool))
=> ! [V2s] :
( mem(V2s,arr(A_27b,bool))
=> ( ! [V3v] :
( mem(V3v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V0fm)))
=> p(ap(V1P,V3v)) ) )
=> ! [V4v] :
( mem(V4v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V4v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27b,A_27a),V0fm),V2s))))
=> p(ap(V1P,V4v)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFRANGE__FUPDATE__SUBSET,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V1kv] :
( mem(V1kv,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(ap(c_2Efinite__map_2EFUPDATE(A_27b,A_27a),V0fm),V1kv))),ap(ap(c_2Epred__set_2EUNION(A_27a),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V0fm)),ap(ap(c_2Epred__set_2EINSERT(A_27a),ap(c_2Epair_2ESND(A_27b,A_27a),V1kv)),c_2Epred__set_2EEMPTY(A_27a))))) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EIN__FRANGE__FUPDATE__suff,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V1P] :
( mem(V1P,arr(A_27a,bool))
=> ! [V2kv] :
( mem(V2kv,ty_2Epair_2Eprod(A_27b,A_27a))
=> ( ( ! [V3v] :
( mem(V3v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V0fm)))
=> p(ap(V1P,V3v)) ) )
& p(ap(V1P,ap(c_2Epair_2ESND(A_27b,A_27a),V2kv))) )
=> ! [V4v] :
( mem(V4v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V4v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),ap(ap(c_2Efinite__map_2EFUPDATE(A_27b,A_27a),V0fm),V2kv))))
=> p(ap(V1P,V4v)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EIN__FRANGE__o__f__suff,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V1P] :
( mem(V1P,arr(A_27c,bool))
=> ! [V2f] :
( mem(V2f,arr(A_27a,A_27c))
=> ( ! [V3v] :
( mem(V3v,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V3v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V0fm)))
=> p(ap(V1P,ap(V2f,V3v))) ) )
=> ! [V4v] :
( mem(V4v,A_27c)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27c),V4v),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27c),ap(ap(c_2Efinite__map_2Eo__f(A_27b,A_27a,A_27c),V2f),V0fm))))
=> p(ap(V1P,V4v)) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__SUBMAP__gen,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1g] :
( mem(V1g,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2P] :
( mem(V2P,arr(A_27a,bool))
=> ( p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),V0f),V1g))
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),V2P)),V1g)) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__SUBSET__SUBMAP,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0s1] :
( mem(V0s1,arr(A_27a,bool))
=> ! [V1s2] :
( mem(V1s2,arr(A_27a,bool))
=> ! [V2f] :
( mem(V2f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Epred__set_2ESUBSET(A_27a),V0s1),V1s2))
=> p(ap(ap(c_2Efinite__map_2ESUBMAP(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V2f),V0s1)),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V2f),V1s2))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICTED__FUNION,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))
=> ! [V2s] :
( mem(V2s,arr(A_27a,bool))
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V0f1),V1f2)),V2s) = ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f1),V2s)),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1f2),ap(ap(c_2Epred__set_2EDIFF(A_27a),V2s),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)))) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFRANGE__DRESTRICT__SUBSET,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V1s] :
( mem(V1s,arr(A_27b,bool))
=> p(ap(ap(c_2Epred__set_2ESUBSET(A_27a),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),ap(ap(c_2Efinite__map_2EDRESTRICT(A_27b,A_27a),V0fm),V1s))),ap(c_2Efinite__map_2EFRANGE(A_27b,A_27a),V0fm))) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__FDOM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)) = V0f ) ) ) ).
fof(conj_thm_2Efinite__map_2EDRESTRICT__SUBSET,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))
=> ! [V2s] :
( mem(V2s,arr(A_27a,bool))
=> ! [V3t] :
( mem(V3t,arr(A_27a,bool))
=> ( ( ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f1),V2s) = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1f2),V2s)
& p(ap(ap(c_2Epred__set_2ESUBSET(A_27a),V3t),V2s)) )
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0f1),V3t) = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1f2),V3t) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Ef__o__f__FUPDATE__compose,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [V0f1] :
( mem(V0f1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1f2] :
( mem(V1f2,ty_2Efinite__map_2Efmap(A_27c,A_27a))
=> ! [V2k] :
( mem(V2k,A_27c)
=> ! [V3x] :
( mem(V3x,A_27a)
=> ! [V4v] :
( mem(V4v,A_27b)
=> ( ( ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V3x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f1)))
& ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V3x),ap(c_2Efinite__map_2EFRANGE(A_27c,A_27a),V1f2))) )
=> ap(ap(c_2Efinite__map_2Ef__o__f(A_27c,A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0f1),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3x),V4v))),ap(ap(c_2Efinite__map_2EFUPDATE(A_27c,A_27a),V1f2),ap(ap(c_2Epair_2E_2C(A_27c,A_27a),V2k),V3x))) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27c,A_27b),ap(ap(c_2Efinite__map_2Ef__o__f(A_27c,A_27a,A_27b),V0f1),V1f2)),ap(ap(c_2Epair_2E_2C(A_27c,A_27b),V2k),V4v)) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__rel__trans,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27a,bool)))
=> ( ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2y] :
( mem(V2y,A_27a)
=> ! [V3z] :
( mem(V3z,A_27a)
=> ( ( p(ap(ap(V0R,V1x),V2y))
& p(ap(ap(V0R,V2y),V3z)) )
=> p(ap(ap(V0R,V1x),V3z)) ) ) ) )
=> ! [V4x] :
( mem(V4x,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V5y] :
( mem(V5y,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V6z] :
( mem(V6z,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ( ( p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27a,A_27b),V0R),V4x),V5y))
& p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27a,A_27b),V0R),V5y),V6z)) )
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27a,A_27b),V0R),V4x),V6z)) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__rel__sym,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0R] :
( mem(V0R,arr(A_27a,arr(A_27a,bool)))
=> ( ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2y] :
( mem(V2y,A_27a)
=> ( p(ap(ap(V0R,V1x),V2y))
=> p(ap(ap(V0R,V2y),V1x)) ) ) )
=> ! [V3x] :
( mem(V3x,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ! [V4y] :
( mem(V4y,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ( p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27a,A_27b),V0R),V3x),V4y))
=> p(ap(ap(ap(c_2Efinite__map_2Efmap__rel(A_27a,A_27a,A_27b),V0R),V4y),V3x)) ) ) ) ) ) ) ) ).
fof(lameq_f1941,axiom,
! [A_27c,A_27a,A_27b,V1f] :
( mem(V1f,arr(A_27b,A_27c))
=> ! [V4a] :
( mem(V4a,A_27a)
=> ! [V5b] : ap(f1941(A_27c,A_27a,A_27b,V1f,V4a),V5b) = ap(ap(c_2Epair_2E_2C(A_27a,A_27c),V4a),ap(V1f,V5b)) ) ) ).
fof(lameq_f1942,axiom,
! [A_27b,A_27c,A_27a,V1f] :
( mem(V1f,arr(A_27b,A_27c))
=> ! [V4a] : ap(f1942(A_27b,A_27c,A_27a,V1f),V4a) = f1941(A_27c,A_27a,A_27b,V1f,V4a) ) ).
fof(conj_thm_2Efinite__map_2Efupdate__list__map,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [A_27c] :
( ne(A_27c)
=> ! [A_27d] :
( ne(A_27d)
=> ! [V0l] :
( mem(V0l,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1f] :
( mem(V1f,arr(A_27b,A_27c))
=> ! [V2x] :
( mem(V2x,A_27a)
=> ! [V3y] :
( mem(V3y,A_27d)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V0l))))
=> ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27c),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27c),c_2Efinite__map_2EFEMPTY(A_27a,A_27c)),ap(ap(c_2Elist_2EMAP(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Epair_2Eprod(A_27a,A_27c)),ap(c_2Epair_2EUNCURRY(A_27a,A_27b,ty_2Epair_2Eprod(A_27a,A_27c)),f1942(A_27b,A_27c,A_27a,V1f))),V0l))),V2x) = ap(V1f,ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V0l)),V2x)) ) ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efdom__fupdate__list2,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0kvl] :
( mem(V0kvl,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1fm] :
( mem(V1fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V1fm),V0kvl)) = ap(ap(c_2Epred__set_2EUNION(A_27a),ap(ap(c_2Epred__set_2EDIFF(A_27a),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1fm)),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)),V0kvl)))),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)),V0kvl))) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Eflookup__thm,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0f] :
( mem(V0f,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1x] :
( mem(V1x,A_27a)
=> ! [V2v] :
( mem(V2v,A_27b)
=> ( ( ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0f),V1x) = c_2Eoption_2ENONE(A_27b)
<=> ~ p(ap(ap(c_2Ebool_2EIN(A_27a),V1x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f))) )
& ( ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0f),V1x) = ap(c_2Eoption_2ESOME(A_27b),V2v)
<=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V1x),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0f)))
& ap(ap(c_2Efinite__map_2EFAPPLY(A_27a,A_27b),V0f),V1x) = V2v ) ) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__EQ__FUPDATE__LIST,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0fm] :
( mem(V0fm,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1kv] :
( mem(V1kv,ty_2Epair_2Eprod(A_27a,A_27b))
=> ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V0fm),V1kv) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V0fm),ap(ap(c_2Elist_2ECONS(ty_2Epair_2Eprod(A_27a,A_27b)),V1kv),c_2Elist_2ENIL(ty_2Epair_2Eprod(A_27a,A_27b)))) ) ) ) ) ).
fof(ax_thm_2Efinite__map_2Efmap__inverse__def,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0m1] :
( mem(V0m1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V1m2] :
( mem(V1m2,ty_2Efinite__map_2Efmap(A_27b,A_27a))
=> ( p(ap(ap(c_2Efinite__map_2Efmap__inverse(A_27a,A_27b),V0m1),V1m2))
<=> ! [V2k] :
( mem(V2k,A_27a)
=> ( p(ap(ap(c_2Ebool_2EIN(A_27a),V2k),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V0m1)))
=> ? [V3v] :
( mem(V3v,A_27b)
& ap(ap(c_2Efinite__map_2EFLOOKUP(A_27a,A_27b),V0m1),V2k) = ap(c_2Eoption_2ESOME(A_27b),V3v)
& ap(ap(c_2Efinite__map_2EFLOOKUP(A_27b,A_27a),V1m2),V3v) = ap(c_2Eoption_2ESOME(A_27a),V2k) ) ) ) ) ) ) ) ) ).
fof(lameq_f1943,axiom,
! [A_27a,A_27b,V3v] :
( mem(V3v,A_27b)
=> ! [V2k] :
( mem(V2k,A_27a)
=> ! [V4env] : ap(f1943(A_27a,A_27b,V3v,V2k),V4env) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V4env),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V2k),V3v)) ) ) ).
fof(lameq_f1944,axiom,
! [A_27a,A_27b,V2k] :
( mem(V2k,A_27a)
=> ! [V3v] : ap(f1944(A_27a,A_27b,V2k),V3v) = f1943(A_27a,A_27b,V3v,V2k) ) ).
fof(lameq_f1945,axiom,
! [A_27b,A_27a,V2k] : ap(f1945(A_27b,A_27a),V2k) = f1944(A_27a,A_27b,V2k) ).
fof(conj_thm_2Efinite__map_2Efupdate__list__foldr,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(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))),f1945(A_27b,A_27a))),V0m),V1l) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V0m),ap(c_2Elist_2EREVERSE(ty_2Epair_2Eprod(A_27a,A_27b)),V1l)) ) ) ) ) ).
fof(lameq_f1946,axiom,
! [A_27a,A_27b,V3k] :
( mem(V3k,A_27a)
=> ! [V2env] :
( mem(V2env,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V4v] : ap(f1946(A_27a,A_27b,V3k,V2env),V4v) = ap(ap(c_2Efinite__map_2EFUPDATE(A_27a,A_27b),V2env),ap(ap(c_2Epair_2E_2C(A_27a,A_27b),V3k),V4v)) ) ) ).
fof(lameq_f1947,axiom,
! [A_27b,A_27a,V2env] :
( mem(V2env,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V3k] : ap(f1947(A_27b,A_27a,V2env),V3k) = f1946(A_27a,A_27b,V3k,V2env) ) ).
fof(lameq_f1948,axiom,
! [A_27b,A_27a,V2env] : ap(f1948(A_27b,A_27a),V2env) = ap(c_2Epair_2EUNCURRY(A_27a,A_27b,ty_2Efinite__map_2Efmap(A_27a,A_27b)),f1947(A_27b,A_27a,V2env)) ).
fof(conj_thm_2Efinite__map_2Efupdate__list__foldl,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(ap(c_2Elist_2EFOLDL(ty_2Epair_2Eprod(A_27a,A_27b),ty_2Efinite__map_2Efmap(A_27a,A_27b)),f1948(A_27b,A_27a)),V0m),V1l) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V0m),V1l) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efmap__to__list,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)))
& 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)),V1l)))
& V0m = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),c_2Efinite__map_2EFEMPTY(A_27a,A_27b)),V1l) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Edisjoint__drestrict,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0s] :
( mem(V0s,arr(A_27a,bool))
=> ! [V1m] :
( mem(V1m,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( p(ap(ap(c_2Epred__set_2EDISJOINT(A_27a),V0s),ap(c_2Efinite__map_2EFDOM(A_27a,A_27b),V1m)))
=> ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V1m),ap(c_2Epred__set_2ECOMPL(A_27a),V0s)) = V1m ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Edrestrict__iter__list,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(A_27a))
=> ap(ap(ap(c_2Elist_2EFOLDR(A_27a,ty_2Efinite__map_2Efmap(A_27a,A_27b)),f1931(A_27b,A_27a)),V0m),V1l) = ap(ap(c_2Efinite__map_2EDRESTRICT(A_27a,A_27b),V0m),ap(c_2Epred__set_2ECOMPL(A_27a),ap(c_2Elist_2ELIST__TO__SET(A_27a),V1l))) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2Efevery__funion,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0P] :
( mem(V0P,arr(ty_2Epair_2Eprod(A_27a,A_27b),bool))
=> ! [V1m1] :
( mem(V1m1,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ! [V2m2] :
( mem(V2m2,ty_2Efinite__map_2Efmap(A_27a,A_27b))
=> ( ( p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),V1m1))
& p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),V2m2)) )
=> p(ap(ap(c_2Efinite__map_2EFEVERY(A_27a,A_27b),V0P),ap(ap(c_2Efinite__map_2EFUNION(A_27a,A_27b),V1m1),V2m2))) ) ) ) ) ) ) ).
fof(conj_thm_2Efinite__map_2EFUPDATE__LIST__ALL__DISTINCT__PERM,axiom,
! [A_27a] :
( ne(A_27a)
=> ! [A_27b] :
( ne(A_27b)
=> ! [V0ls] :
( mem(V0ls,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V1ls_27] :
( mem(V1ls_27,ty_2Elist_2Elist(ty_2Epair_2Eprod(A_27a,A_27b)))
=> ! [V2fm] :
( mem(V2fm,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)),V0ls)))
& p(ap(ap(c_2Esorting_2EPERM(ty_2Epair_2Eprod(A_27a,A_27b)),V0ls),V1ls_27)) )
=> ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V2fm),V0ls) = ap(ap(c_2Efinite__map_2EFUPDATE__LIST(A_27a,A_27b),V2fm),V1ls_27) ) ) ) ) ) ) ).
%------------------------------------------------------------------------------