% Mizar problem: l18_algstr_2,algstr_2,456,5 
fof(l18_algstr_2, conjecture,  (! [A] :  ( ( ~ (v2_struct_0(A))  & l6_algstr_0(A))  =>  (! [B] :  (m1_subset_1(B, u1_struct_0(A)) =>  (! [C] :  (m1_subset_1(C, u1_struct_0(A)) =>  ( ( (! [D] :  (m1_subset_1(D, u1_struct_0(A)) => k6_algstr_0(A, D, k5_struct_0(A))=D) )  &  ( (! [D] :  (m1_subset_1(D, u1_struct_0(A)) =>  ~ ( ( ~ (D=k4_struct_0(A))  &  (! [E] :  (m1_subset_1(E, u1_struct_0(A)) =>  ~ (k6_algstr_0(A, D, E)=k5_struct_0(A)) ) ) ) ) ) )  &  ( (! [D] :  (m1_subset_1(D, u1_struct_0(A)) =>  (! [E] :  (m1_subset_1(E, u1_struct_0(A)) =>  (! [F] :  (m1_subset_1(F, u1_struct_0(A)) => k6_algstr_0(A, k6_algstr_0(A, D, E), F)=k6_algstr_0(A, D, k6_algstr_0(A, E, F))) ) ) ) ) )  &  ( (! [D] :  (m1_subset_1(D, u1_struct_0(A)) => k6_algstr_0(A, D, k4_struct_0(A))=k4_struct_0(A)) )  & k6_algstr_0(A, B, C)=k5_struct_0(A)) ) ) )  =>  (k4_struct_0(A)=k5_struct_0(A) | k6_algstr_0(A, C, B)=k5_struct_0(A)) ) ) ) ) ) ) ) ).
fof(dt_k4_struct_0, axiom,  (! [A] :  (l2_struct_0(A) => m1_subset_1(k4_struct_0(A), u1_struct_0(A))) ) ).
fof(dt_k5_struct_0, axiom,  (! [A] :  (l3_struct_0(A) => m1_subset_1(k5_struct_0(A), u1_struct_0(A))) ) ).
fof(dt_k6_algstr_0, axiom,  (! [A, B, C] :  ( (l3_algstr_0(A) &  (m1_subset_1(B, u1_struct_0(A)) & m1_subset_1(C, u1_struct_0(A))) )  => m1_subset_1(k6_algstr_0(A, B, C), u1_struct_0(A))) ) ).
fof(dt_l1_algstr_0, axiom,  (! [A] :  (l1_algstr_0(A) => l1_struct_0(A)) ) ).
fof(dt_l1_struct_0, axiom, $true).
fof(dt_l2_algstr_0, axiom,  (! [A] :  (l2_algstr_0(A) =>  (l2_struct_0(A) & l1_algstr_0(A)) ) ) ).
fof(dt_l2_struct_0, axiom,  (! [A] :  (l2_struct_0(A) => l1_struct_0(A)) ) ).
fof(dt_l3_algstr_0, axiom,  (! [A] :  (l3_algstr_0(A) => l1_struct_0(A)) ) ).
fof(dt_l3_struct_0, axiom,  (! [A] :  (l3_struct_0(A) => l1_struct_0(A)) ) ).
fof(dt_l4_algstr_0, axiom,  (! [A] :  (l4_algstr_0(A) =>  (l3_struct_0(A) & l3_algstr_0(A)) ) ) ).
fof(dt_l4_struct_0, axiom,  (! [A] :  (l4_struct_0(A) =>  (l2_struct_0(A) & l3_struct_0(A)) ) ) ).
fof(dt_l5_algstr_0, axiom,  (! [A] :  (l5_algstr_0(A) =>  (l4_algstr_0(A) & l4_struct_0(A)) ) ) ).
fof(dt_l6_algstr_0, axiom,  (! [A] :  (l6_algstr_0(A) =>  (l2_algstr_0(A) & l5_algstr_0(A)) ) ) ).
fof(dt_m1_subset_1, axiom, $true).
fof(dt_u1_struct_0, axiom, $true).
fof(existence_l1_algstr_0, axiom,  (? [A] : l1_algstr_0(A)) ).
fof(existence_l1_struct_0, axiom,  (? [A] : l1_struct_0(A)) ).
fof(existence_l2_algstr_0, axiom,  (? [A] : l2_algstr_0(A)) ).
fof(existence_l2_struct_0, axiom,  (? [A] : l2_struct_0(A)) ).
fof(existence_l3_algstr_0, axiom,  (? [A] : l3_algstr_0(A)) ).
fof(existence_l3_struct_0, axiom,  (? [A] : l3_struct_0(A)) ).
fof(existence_l4_algstr_0, axiom,  (? [A] : l4_algstr_0(A)) ).
fof(existence_l4_struct_0, axiom,  (? [A] : l4_struct_0(A)) ).
fof(existence_l5_algstr_0, axiom,  (? [A] : l5_algstr_0(A)) ).
fof(existence_l6_algstr_0, axiom,  (? [A] : l6_algstr_0(A)) ).
fof(existence_m1_subset_1, axiom,  (! [A] :  (? [B] : m1_subset_1(B, A)) ) ).
