# Entrants' Sample Solutions

## EP 1.0pre

Stephan Schulz
Institut für Informatik, Technische Universität, Germany

### Sample solution for SYN075+1

```# Problem is unsatisfiable (or provable), constructing proof object
# SZS status Theorem
# SZS output start CNFRefutation.
fof(1, axiom,?[X1]:?[X2]:![X3]:![X4]:(big_f(X3,X4)<=>(equal(X3, X1)&equal(X4, X2))),file('/home/graph/tptp/TPTP/Problems/SYN/SYN075+1.p', pel52_1)).
fof(2, conjecture,?[X2]:![X4]:(?[X1]:![X3]:(big_f(X3,X4)<=>equal(X3, X1))<=>equal(X4, X2)),file('/home/graph/tptp/TPTP/Problems/SYN/SYN075+1.p', pel52)).
fof(3, negated_conjecture,~(?[X2]:![X4]:(?[X1]:![X3]:(big_f(X3,X4)<=>equal(X3, X1))<=>equal(X4, X2))),inference(assume_negation,[status(cth)],[2])).
fof(4, plain,?[X1]:?[X2]:![X3]:![X4]:((~(big_f(X3,X4))|(equal(X3, X1)&equal(X4, X2)))&((~(equal(X3, X1))|~(equal(X4, X2)))|big_f(X3,X4))),inference(fof_nnf,[status(thm)],[1])).
fof(5, plain,?[X5]:?[X6]:![X7]:![X8]:((~(big_f(X7,X8))|(equal(X7, X5)&equal(X8, X6)))&((~(equal(X7, X5))|~(equal(X8, X6)))|big_f(X7,X8))),inference(variable_rename,[status(thm)],[4])).
fof(6, plain,![X7]:![X8]:((~(big_f(X7,X8))|(equal(X7, esk1_0)&equal(X8, esk2_0)))&((~(equal(X7, esk1_0))|~(equal(X8, esk2_0)))|big_f(X7,X8))),inference(skolemize,[status(sab)],[5])).
fof(7, plain,![X7]:![X8]:(((equal(X7, esk1_0)|~(big_f(X7,X8)))&(equal(X8, esk2_0)|~(big_f(X7,X8))))&((~(equal(X7, esk1_0))|~(equal(X8, esk2_0)))|big_f(X7,X8))),inference(distribute,[status(thm)],[6])).
cnf(8,plain,(big_f(X1,X2)|X2!=esk2_0|X1!=esk1_0),inference(split_conjunct,[status(thm)],[7])).
cnf(9,plain,(X2=esk2_0|~big_f(X1,X2)),inference(split_conjunct,[status(thm)],[7])).
cnf(10,plain,(X1=esk1_0|~big_f(X1,X2)),inference(split_conjunct,[status(thm)],[7])).
fof(11, negated_conjecture,![X2]:?[X4]:((![X1]:?[X3]:((~(big_f(X3,X4))|~(equal(X3, X1)))&(big_f(X3,X4)|equal(X3, X1)))|~(equal(X4, X2)))&(?[X1]:![X3]:((~(big_f(X3,X4))|equal(X3, X1))&(~(equal(X3, X1))|big_f(X3,X4)))|equal(X4, X2))),inference(fof_nnf,[status(thm)],[3])).
fof(12, negated_conjecture,![X5]:?[X6]:((![X7]:?[X8]:((~(big_f(X8,X6))|~(equal(X8, X7)))&(big_f(X8,X6)|equal(X8, X7)))|~(equal(X6, X5)))&(?[X9]:![X10]:((~(big_f(X10,X6))|equal(X10, X9))&(~(equal(X10, X9))|big_f(X10,X6)))|equal(X6, X5))),inference(variable_rename,[status(thm)],[11])).
fof(13, negated_conjecture,![X5]:((![X7]:((~(big_f(esk4_2(X5,X7),esk3_1(X5)))|~(equal(esk4_2(X5,X7), X7)))&(big_f(esk4_2(X5,X7),esk3_1(X5))|equal(esk4_2(X5,X7), X7)))|~(equal(esk3_1(X5), X5)))&(![X10]:((~(big_f(X10,esk3_1(X5)))|equal(X10, esk5_1(X5)))&(~(equal(X10, esk5_1(X5)))|big_f(X10,esk3_1(X5))))|equal(esk3_1(X5), X5))),inference(skolemize,[status(sab)],[12])).
fof(14, negated_conjecture,![X5]:![X7]:![X10]:((((~(big_f(X10,esk3_1(X5)))|equal(X10, esk5_1(X5)))&(~(equal(X10, esk5_1(X5)))|big_f(X10,esk3_1(X5))))|equal(esk3_1(X5), X5))&(((~(big_f(esk4_2(X5,X7),esk3_1(X5)))|~(equal(esk4_2(X5,X7), X7)))&(big_f(esk4_2(X5,X7),esk3_1(X5))|equal(esk4_2(X5,X7), X7)))|~(equal(esk3_1(X5), X5)))),inference(shift_quantors,[status(thm)],[13])).
fof(15, negated_conjecture,![X5]:![X7]:![X10]:((((~(big_f(X10,esk3_1(X5)))|equal(X10, esk5_1(X5)))|equal(esk3_1(X5), X5))&((~(equal(X10, esk5_1(X5)))|big_f(X10,esk3_1(X5)))|equal(esk3_1(X5), X5)))&(((~(big_f(esk4_2(X5,X7),esk3_1(X5)))|~(equal(esk4_2(X5,X7), X7)))|~(equal(esk3_1(X5), X5)))&((big_f(esk4_2(X5,X7),esk3_1(X5))|equal(esk4_2(X5,X7), X7))|~(equal(esk3_1(X5), X5))))),inference(distribute,[status(thm)],[14])).
cnf(16,negated_conjecture,(esk4_2(X1,X2)=X2|big_f(esk4_2(X1,X2),esk3_1(X1))|esk3_1(X1)!=X1),inference(split_conjunct,[status(thm)],[15])).
cnf(17,negated_conjecture,(esk3_1(X1)!=X1|esk4_2(X1,X2)!=X2|~big_f(esk4_2(X1,X2),esk3_1(X1))),inference(split_conjunct,[status(thm)],[15])).
cnf(18,negated_conjecture,(esk3_1(X1)=X1|big_f(X2,esk3_1(X1))|X2!=esk5_1(X1)),inference(split_conjunct,[status(thm)],[15])).
cnf(20,plain,(big_f(esk1_0,X1)|esk2_0!=X1),inference(er,[status(thm)],[8,theory(equality)])).
cnf(21,negated_conjecture,(esk3_1(X1)=X1|big_f(esk5_1(X1),esk3_1(X1))),inference(er,[status(thm)],[18,theory(equality)])).
cnf(23,negated_conjecture,(esk2_0=esk3_1(X1)|esk3_1(X1)=X1),inference(spm,[status(thm)],[9,21,theory(equality)])).
cnf(28,plain,(big_f(esk1_0,esk2_0)),inference(er,[status(thm)],[20,theory(equality)])).
cnf(30,negated_conjecture,(esk3_1(X2)=X2|esk2_0!=X2),inference(ef,[status(thm)],[23,theory(equality)])).
cnf(40,negated_conjecture,(esk3_1(esk2_0)=esk2_0),inference(er,[status(thm)],[30,theory(equality)])).
cnf(44,negated_conjecture,(esk4_2(esk2_0,X1)!=X1|~big_f(esk4_2(esk2_0,X1),esk2_0)),inference(spm,[status(thm)],[17,40,theory(equality)])).
cnf(45,negated_conjecture,(esk4_2(esk2_0,X1)=X1|big_f(esk4_2(esk2_0,X1),esk2_0)),inference(spm,[status(thm)],[16,40,theory(equality)])).
cnf(47,negated_conjecture,(esk1_0=esk4_2(esk2_0,X1)|esk4_2(esk2_0,X1)=X1),inference(spm,[status(thm)],[10,45,theory(equality)])).
cnf(54,negated_conjecture,(esk4_2(esk2_0,X2)=X2|esk1_0!=X2),inference(ef,[status(thm)],[47,theory(equality)])).
cnf(78,negated_conjecture,(esk4_2(esk2_0,esk1_0)=esk1_0),inference(er,[status(thm)],[54,theory(equality)])).
cnf(80,negated_conjecture,(~big_f(esk1_0,esk2_0)),inference(spm,[status(thm)],[44,78,theory(equality)])).
cnf(84,negated_conjecture,(\$false),inference(rw,[status(thm)],[80,28,theory(equality)])).
cnf(85,negated_conjecture,(\$false),inference(cn,[status(thm)],[84,theory(equality)])).
cnf(86,negated_conjecture,(\$false),85,['proof']).
# SZS output end CNFRefutation
# SZS status Theorem
```

## MaLARea 0.3

Josef Urban
Charles University in Prague, Czech Republic The sample solutions are EP and SPASS proofs.

### Sample solution for SYN075+1 from EP

```# Problem is unsatisfiable (or provable), constructing proof object
# SZS status Theorem
# SZS output start CNFRefutation.
fof(1, axiom,?[X1]:?[X2]:![X3]:![X4]:(big_f(X3,X4)<=>(equal(X3, X1)&equal(X4, X2))),file('/home/graph/tptp/TPTP/Problems/SYN/SYN075+1.p', pel52_1)).
fof(2, conjecture,?[X2]:![X4]:(?[X1]:![X3]:(big_f(X3,X4)<=>equal(X3, X1))<=>equal(X4, X2)),file('/home/graph/tptp/TPTP/Problems/SYN/SYN075+1.p', pel52)).
fof(3, negated_conjecture,~(?[X2]:![X4]:(?[X1]:![X3]:(big_f(X3,X4)<=>equal(X3, X1))<=>equal(X4, X2))),inference(assume_negation,[status(cth)],[2])).
fof(4, plain,?[X1]:?[X2]:![X3]:![X4]:((~(big_f(X3,X4))|(equal(X3, X1)&equal(X4, X2)))&((~(equal(X3, X1))|~(equal(X4, X2)))|big_f(X3,X4))),inference(fof_nnf,[status(thm)],[1])).
fof(5, plain,?[X5]:?[X6]:![X7]:![X8]:((~(big_f(X7,X8))|(equal(X7, X5)&equal(X8, X6)))&((~(equal(X7, X5))|~(equal(X8, X6)))|big_f(X7,X8))),inference(variable_rename,[status(thm)],[4])).
fof(6, plain,![X7]:![X8]:((~(big_f(X7,X8))|(equal(X7, esk1_0)&equal(X8, esk2_0)))&((~(equal(X7, esk1_0))|~(equal(X8, esk2_0)))|big_f(X7,X8))),inference(skolemize,[status(sab)],[5])).
fof(7, plain,![X7]:![X8]:(((equal(X7, esk1_0)|~(big_f(X7,X8)))&(equal(X8, esk2_0)|~(big_f(X7,X8))))&((~(equal(X7, esk1_0))|~(equal(X8, esk2_0)))|big_f(X7,X8))),inference(distribute,[status(thm)],[6])).
cnf(8,plain,(big_f(X1,X2)|X2!=esk2_0|X1!=esk1_0),inference(split_conjunct,[status(thm)],[7])).
cnf(9,plain,(X2=esk2_0|~big_f(X1,X2)),inference(split_conjunct,[status(thm)],[7])).
cnf(10,plain,(X1=esk1_0|~big_f(X1,X2)),inference(split_conjunct,[status(thm)],[7])).
fof(11, negated_conjecture,![X2]:?[X4]:((![X1]:?[X3]:((~(big_f(X3,X4))|~(equal(X3, X1)))&(big_f(X3,X4)|equal(X3, X1)))|~(equal(X4, X2)))&(?[X1]:![X3]:((~(big_f(X3,X4))|equal(X3, X1))&(~(equal(X3, X1))|big_f(X3,X4)))|equal(X4, X2))),inference(fof_nnf,[status(thm)],[3])).
fof(12, negated_conjecture,![X5]:?[X6]:((![X7]:?[X8]:((~(big_f(X8,X6))|~(equal(X8, X7)))&(big_f(X8,X6)|equal(X8, X7)))|~(equal(X6, X5)))&(?[X9]:![X10]:((~(big_f(X10,X6))|equal(X10, X9))&(~(equal(X10, X9))|big_f(X10,X6)))|equal(X6, X5))),inference(variable_rename,[status(thm)],[11])).
fof(13, negated_conjecture,![X5]:((![X7]:((~(big_f(esk4_2(X5,X7),esk3_1(X5)))|~(equal(esk4_2(X5,X7), X7)))&(big_f(esk4_2(X5,X7),esk3_1(X5))|equal(esk4_2(X5,X7), X7)))|~(equal(esk3_1(X5), X5)))&(![X10]:((~(big_f(X10,esk3_1(X5)))|equal(X10, esk5_1(X5)))&(~(equal(X10, esk5_1(X5)))|big_f(X10,esk3_1(X5))))|equal(esk3_1(X5), X5))),inference(skolemize,[status(sab)],[12])).
fof(14, negated_conjecture,![X5]:![X7]:![X10]:((((~(big_f(X10,esk3_1(X5)))|equal(X10, esk5_1(X5)))&(~(equal(X10, esk5_1(X5)))|big_f(X10,esk3_1(X5))))|equal(esk3_1(X5), X5))&(((~(big_f(esk4_2(X5,X7),esk3_1(X5)))|~(equal(esk4_2(X5,X7), X7)))&(big_f(esk4_2(X5,X7),esk3_1(X5))|equal(esk4_2(X5,X7), X7)))|~(equal(esk3_1(X5), X5)))),inference(shift_quantors,[status(thm)],[13])).
fof(15, negated_conjecture,![X5]:![X7]:![X10]:((((~(big_f(X10,esk3_1(X5)))|equal(X10, esk5_1(X5)))|equal(esk3_1(X5), X5))&((~(equal(X10, esk5_1(X5)))|big_f(X10,esk3_1(X5)))|equal(esk3_1(X5), X5)))&(((~(big_f(esk4_2(X5,X7),esk3_1(X5)))|~(equal(esk4_2(X5,X7), X7)))|~(equal(esk3_1(X5), X5)))&((big_f(esk4_2(X5,X7),esk3_1(X5))|equal(esk4_2(X5,X7), X7))|~(equal(esk3_1(X5), X5))))),inference(distribute,[status(thm)],[14])).
cnf(16,negated_conjecture,(esk4_2(X1,X2)=X2|big_f(esk4_2(X1,X2),esk3_1(X1))|esk3_1(X1)!=X1),inference(split_conjunct,[status(thm)],[15])).
cnf(17,negated_conjecture,(esk3_1(X1)!=X1|esk4_2(X1,X2)!=X2|~big_f(esk4_2(X1,X2),esk3_1(X1))),inference(split_conjunct,[status(thm)],[15])).
cnf(18,negated_conjecture,(esk3_1(X1)=X1|big_f(X2,esk3_1(X1))|X2!=esk5_1(X1)),inference(split_conjunct,[status(thm)],[15])).
cnf(20,plain,(big_f(esk1_0,X1)|esk2_0!=X1),inference(er,[status(thm)],[8,theory(equality)])).
cnf(21,negated_conjecture,(esk3_1(X1)=X1|big_f(esk5_1(X1),esk3_1(X1))),inference(er,[status(thm)],[18,theory(equality)])).
cnf(23,negated_conjecture,(esk2_0=esk3_1(X1)|esk3_1(X1)=X1),inference(spm,[status(thm)],[9,21,theory(equality)])).
cnf(28,plain,(big_f(esk1_0,esk2_0)),inference(er,[status(thm)],[20,theory(equality)])).
cnf(30,negated_conjecture,(esk3_1(X2)=X2|esk2_0!=X2),inference(ef,[status(thm)],[23,theory(equality)])).
cnf(40,negated_conjecture,(esk3_1(esk2_0)=esk2_0),inference(er,[status(thm)],[30,theory(equality)])).
cnf(44,negated_conjecture,(esk4_2(esk2_0,X1)!=X1|~big_f(esk4_2(esk2_0,X1),esk2_0)),inference(spm,[status(thm)],[17,40,theory(equality)])).
cnf(45,negated_conjecture,(esk4_2(esk2_0,X1)=X1|big_f(esk4_2(esk2_0,X1),esk2_0)),inference(spm,[status(thm)],[16,40,theory(equality)])).
cnf(47,negated_conjecture,(esk1_0=esk4_2(esk2_0,X1)|esk4_2(esk2_0,X1)=X1),inference(spm,[status(thm)],[10,45,theory(equality)])).
cnf(54,negated_conjecture,(esk4_2(esk2_0,X2)=X2|esk1_0!=X2),inference(ef,[status(thm)],[47,theory(equality)])).
cnf(78,negated_conjecture,(esk4_2(esk2_0,esk1_0)=esk1_0),inference(er,[status(thm)],[54,theory(equality)])).
cnf(80,negated_conjecture,(~big_f(esk1_0,esk2_0)),inference(spm,[status(thm)],[44,78,theory(equality)])).
cnf(84,negated_conjecture,(\$false),inference(rw,[status(thm)],[80,28,theory(equality)])).
cnf(85,negated_conjecture,(\$false),inference(cn,[status(thm)],[84,theory(equality)])).
cnf(86,negated_conjecture,(\$false),85,['proof']).
# SZS output end CNFRefutation
# SZS status Theorem
```

### Sample solution for SYN075+1 from SPASS

```SPASS beiseite: Proof found.
Problem: /tmp/SystemOnTPTP19294/SYN075+1.dfg
SPASS derived 429 clauses, backtracked 100 clauses and kept 218 clauses.
SPASS allocated 679 KBytes.
SPASS spent0:00:00.03 on the problem.
the0:00:00.00 for the input.
the0:00:00.00 for the FLOTTER CNF translation.
CNF0:00:00.00 for inferences.
for0:00:00.00 for the backtracking.
the0:00:00.01 for the reduction.

Here is a proof with depth 6, length 43 :
1[0:Inp] || big_f__dfg(U,V)* -> equal(V,skc8).
2[0:Inp] || big_f__dfg(U,V)* -> equal(U,skc7).
4[0:Inp] || equal(U,skc8) equal(V,skc7) -> big_f__dfg(V,U)*.
5[0:Inp] || equal(U,skf5(V)) -> big_f__dfg(U,skf3(V))* equal(skf3(V),V).
6[0:Inp] || equal(skf3(U),U) -> equal(skf6(V,U),V) big_f__dfg(skf6(V,U),skf3(U))*.
7[0:Inp] || equal(skf3(U),U) equal(skf6(V,U),V) big_f__dfg(skf6(V,U),skf3(U))* -> .
11[0:Res:5.1,1.0] || equal(U,skf5(V))* -> equal(skf3(V),V) equal(skf3(V),skc8).
14[0:AED:11.0] ||  -> equal(skf3(U),U)** equal(skf3(U),skc8)**.
15[0:Rew:14.1,5.1] || equal(U,skf5(V))*+ -> big_f__dfg(U,skc8)* equal(skf3(V),V).
16[0:EqF:14.0,14.1] || equal(U,skc8) -> equal(skf3(U),skc8)**.
18[0:Fac:14.0,14.1] ||  -> equal(skf3(skc8),skc8)**.
35[0:EqR:15.0] ||  -> big_f__dfg(skf5(U),skc8)* equal(skf3(U),U).
50[0:Res:35.0,2.0] ||  -> equal(skf3(U),U) equal(skf5(U),skc7)**.
52[0:Rew:50.1,35.0] ||  -> big_f__dfg(skc7,skc8)* equal(skf3(U),U)**.
61[1:Spt:52.1] ||  -> equal(skf3(U),U)**.
65[1:Rew:61.0,7.0] || equal(U,U) equal(skf6(V,U),V) big_f__dfg(skf6(V,U),skf3(U))* -> .
66[1:Rew:61.0,6.0] || equal(U,U) -> equal(skf6(V,U),V) big_f__dfg(skf6(V,U),skf3(U))*.
69[1:Obv:66.0] ||  -> equal(skf6(U,V),U) big_f__dfg(skf6(U,V),skf3(V))*.
70[1:Rew:61.0,69.1] ||  -> equal(skf6(U,V),U) big_f__dfg(skf6(U,V),V)*.
71[1:Obv:65.0] || equal(skf6(U,V),U) big_f__dfg(skf6(U,V),skf3(V))* -> .
72[1:Rew:61.0,71.1] || equal(skf6(U,V),U) big_f__dfg(skf6(U,V),V)* -> .
78[1:Res:70.1,2.0] ||  -> equal(skf6(U,V),U)** equal(skf6(U,V),skc7)**.
79[1:Rew:78.1,70.1] ||  -> equal(skf6(U,V),U)** big_f__dfg(skc7,V).
121[1:Fac:78.0,78.1] ||  -> equal(skf6(skc7,U),skc7)**.
213[1:SpL:121.0,72.1] || equal(skf6(skc7,U),skc7)** big_f__dfg(skc7,U) -> .
221[1:Rew:121.0,213.0] || equal(skc7,skc7) big_f__dfg(skc7,U)* -> .
222[1:Obv:221.0] || big_f__dfg(skc7,U)* -> .
223[1:MRR:79.1,222.0] ||  -> equal(skf6(U,V),U)**.
224[1:Rew:223.0,72.0] || equal(U,U) big_f__dfg(skf6(U,V),V)* -> .
226[1:Obv:224.0] || big_f__dfg(skf6(U,V),V)* -> .
227[1:Rew:223.0,226.0] || big_f__dfg(U,V)* -> .
228[1:MRR:4.2,227.0] || equal(U,skc8)* equal(V,skc7)* -> .
229[1:AED:228.1] ||  -> .
232[1:Spt:229.0,52.0] ||  -> big_f__dfg(skc7,skc8)*.
493[0:SpR:18.0,6.2] || equal(skf3(skc8),skc8) -> equal(skf6(U,skc8),U) big_f__dfg(skf6(U,skc8),skc8)*.
504[0:Rew:18.0,493.0] || equal(skc8,skc8) -> equal(skf6(U,skc8),U) big_f__dfg(skf6(U,skc8),skc8)*.
505[0:Obv:504.0] ||  -> equal(skf6(U,skc8),U) big_f__dfg(skf6(U,skc8),skc8)*.
517[0:Res:505.1,2.0] ||  -> equal(skf6(U,skc8),U)** equal(skf6(U,skc8),skc7)**.
522[0:Fac:517.0,517.1] ||  -> equal(skf6(skc7,skc8),skc7)**.
539[0:SpL:522.0,7.2] || equal(skf3(skc8),skc8) equal(skf6(skc7,skc8),skc7) big_f__dfg(skc7,skf3(skc8))* -> .
541[0:Rew:16.1,539.2,522.0,539.1,18.0,539.0] || equal(skc8,skc8) equal(skc7,skc7) big_f__dfg(skc7,skc8)* -> .
542[0:Obv:541.1] || big_f__dfg(skc7,skc8)* -> .
543[1:MRR:542.0,232.0] ||  -> .
Formulae used in the proof : pel52_1 pel52
```

## Metis 2.1

Joe Hurd
Galois, Inc., USA

### Explanation of Inference Rules

```signature Thm =

(* ------------------------------------------------------------------------- *)
(*                                                                           *)
(* ----- axiom C                                                             *)
(*   C                                                                       *)
(* ------------------------------------------------------------------------- *)

val axiom : Clause.clause -> thm

(* ------------------------------------------------------------------------- *)
(*                                                                           *)
(* ----------- assume L                                                      *)
(*   L \/ ~L                                                                 *)
(* ------------------------------------------------------------------------- *)

val assume : Literal.literal -> thm

(* ------------------------------------------------------------------------- *)
(*    C                                                                      *)
(* -------- subst s                                                          *)
(*   C[s]                                                                    *)
(* ------------------------------------------------------------------------- *)

val subst : Subst.subst -> thm -> thm

(* ------------------------------------------------------------------------- *)
(*   L \/ C    ~L \/ D                                                       *)
(* --------------------- resolve L                                           *)
(*        C \/ D                                                             *)
(*                                                                           *)
(* The literal L must occur in the first theorem, and the literal ~L must    *)
(* occur in the second theorem.                                              *)
(* ------------------------------------------------------------------------- *)

val resolve : Literal.literal -> thm -> thm -> thm

(* ------------------------------------------------------------------------- *)
(*                                                                           *)
(* --------- refl t                                                          *)
(*   t = t                                                                   *)
(* ------------------------------------------------------------------------- *)

val refl : Term.term -> thm

(* ------------------------------------------------------------------------- *)
(*                                                                           *)
(* ------------------------ equality L p t                                   *)
(*   ~(s = t) \/ ~L \/ L'                                                    *)
(*                                                                           *)
(* where s is the subterm of L at path p, and L' is L with the subterm at    *)
(* path p being replaced by t.                                               *)
(* ------------------------------------------------------------------------- *)

val equality : Literal.literal -> Term.path -> Term.term -> thm

end
```

### Sample solution for SYN075+1

```Problem: data/problems/all/SYN075+1.tptp

Goal:
(?Z W. !X Y. big_f X Y <=> X = Z /\ Y = W) ==>
?W. !Y. (?Z. !X. big_f X Y <=> X = Z) <=> Y = W

Clauses:
(~big_f \$X \$Y \/ \$X = skolemFOFtoCNF_Z) /\
(~big_f \$X \$Y \/ \$Y = skolemFOFtoCNF_W) /\
(~(\$X = skolemFOFtoCNF_Z) \/ ~(\$Y = skolemFOFtoCNF_W) \/ big_f \$X \$Y) /\
(~(\$X = skolemFOFtoCNF_Z_1 \$W) \/ skolemFOFtoCNF_Y \$W = \$W \/
big_f \$X (skolemFOFtoCNF_Y \$W)) /\
(~(skolemFOFtoCNF_X \$W \$Z = \$Z) \/ ~(skolemFOFtoCNF_Y \$W = \$W) \/
~big_f (skolemFOFtoCNF_X \$W \$Z) (skolemFOFtoCNF_Y \$W)) /\
(~(skolemFOFtoCNF_Y \$W = \$W) \/ skolemFOFtoCNF_X \$W \$Z = \$Z \/
big_f (skolemFOFtoCNF_X \$W \$Z) (skolemFOFtoCNF_Y \$W)) /\
(~big_f \$X (skolemFOFtoCNF_Y \$W) \/ \$X = skolemFOFtoCNF_Z_1 \$W \/
skolemFOFtoCNF_Y \$W = \$W)

SZS status Theorem for data/problems/all/SYN075+1.tptp

SZS output start CNFRefutation for data/problems/all/SYN075+1.tptp
fof(pel52_1, axiom,
(? [Z, W] : ! [X, Y] : (big_f(X, Y) <=> (X = Z & Y = W)))).

fof(pel52, conjecture,
(? [W] : ! [Y] : (? [Z] : ! [X] : (big_f(X, Y) <=> X = Z) <=> Y = W))).

cnf(0, plain,
(skolemFOFtoCNF_X(W, Z) != Z | skolemFOFtoCNF_Y(W) != W |
~ big_f(skolemFOFtoCNF_X(W, Z), skolemFOFtoCNF_Y(W))),
inference(fof_to_cnf, [], [pel52])).

cnf(1, plain, (skolemFOFtoCNF_X(W, Z) != Z | skolemFOFtoCNF_X(W, Z) = Z),
introduced(tautology,
[assume, [\$cnf(\$equal(skolemFOFtoCNF_X(W, Z), Z))]])).

cnf(2, plain,
(skolemFOFtoCNF_X(W, Z) != Z | ~ big_f(Z, skolemFOFtoCNF_Y(W)) |
big_f(skolemFOFtoCNF_X(W, Z), skolemFOFtoCNF_Y(W))),
introduced(tautology,
[equality,
[\$cnf(~ big_f(skolemFOFtoCNF_X(W, Z),
skolemFOFtoCNF_Y(W))), [0], \$fot(Z)]])).

cnf(3, plain, (skolemFOFtoCNF_Y(W) != W | skolemFOFtoCNF_Y(W) = W),
introduced(tautology,
[assume, [\$cnf(\$equal(skolemFOFtoCNF_Y(W), W))]])).

cnf(4, plain,
(skolemFOFtoCNF_Y(W) != W | ~ big_f(Z, W) |
big_f(Z, skolemFOFtoCNF_Y(W))),
introduced(tautology,
[equality,
[\$cnf(~ big_f(Z, skolemFOFtoCNF_Y(W))), [1], \$fot(W)]])).

cnf(5, plain,
(skolemFOFtoCNF_X(W, Z) != Z | skolemFOFtoCNF_Y(W) != W |
~ big_f(Z, W) | big_f(skolemFOFtoCNF_X(W, Z), skolemFOFtoCNF_Y(W))),
inference(resolve, [\$cnf(big_f(Z, skolemFOFtoCNF_Y(W)))], [4, 2])).

cnf(6, plain,
(skolemFOFtoCNF_X(W, Z) != Z | skolemFOFtoCNF_Y(W) != W |
~ big_f(Z, W)),
inference(resolve,
[\$cnf(big_f(skolemFOFtoCNF_X(W, Z), skolemFOFtoCNF_Y(W)))],
[5, 0])).

cnf(7, plain,
(skolemFOFtoCNF_X(skolemFOFtoCNF_W, skolemFOFtoCNF_Z) !=
skolemFOFtoCNF_Z |
skolemFOFtoCNF_Y(skolemFOFtoCNF_W) != skolemFOFtoCNF_W |
~ big_f(skolemFOFtoCNF_Z, skolemFOFtoCNF_W)),
inference(subst,
[[W, \$fot(skolemFOFtoCNF_W)], [Z, \$fot(skolemFOFtoCNF_Z)]],
[6])).

cnf(8, plain, (~ big_f(X, Y) | X = skolemFOFtoCNF_Z),
inference(fof_to_cnf, [], [pel52_1])).

cnf(9, plain,
(~ big_f(skolemFOFtoCNF_X(skolemFOFtoCNF_W, X1), skolemFOFtoCNF_W) |
skolemFOFtoCNF_X(skolemFOFtoCNF_W, X1) = skolemFOFtoCNF_Z),
inference(subst,
[[X, \$fot(skolemFOFtoCNF_X(skolemFOFtoCNF_W, X1))],
[Y, \$fot(skolemFOFtoCNF_W)]], [8])).

cnf(10, plain,
(skolemFOFtoCNF_Y(W) != W | skolemFOFtoCNF_X(W, Z) = Z |
big_f(skolemFOFtoCNF_X(W, Z), skolemFOFtoCNF_Y(W))),
inference(fof_to_cnf, [], [pel52])).

cnf(11, plain,
(skolemFOFtoCNF_Y(W) != W |
~ big_f(skolemFOFtoCNF_X(W, Z), skolemFOFtoCNF_Y(W)) |
big_f(skolemFOFtoCNF_X(W, Z), W)),
introduced(tautology,
[equality,
[\$cnf(big_f(skolemFOFtoCNF_X(W, Z), skolemFOFtoCNF_Y(W))),
[1], \$fot(W)]])).

cnf(12, plain,
(skolemFOFtoCNF_Y(W) != W | skolemFOFtoCNF_X(W, Z) = Z |
big_f(skolemFOFtoCNF_X(W, Z), W)),
inference(resolve,
[\$cnf(big_f(skolemFOFtoCNF_X(W, Z), skolemFOFtoCNF_Y(W)))],
[10, 11])).

cnf(13, plain,
(skolemFOFtoCNF_Y(skolemFOFtoCNF_W) != skolemFOFtoCNF_W |
skolemFOFtoCNF_X(skolemFOFtoCNF_W, X0) = X0 |
big_f(skolemFOFtoCNF_X(skolemFOFtoCNF_W, X0), skolemFOFtoCNF_W)),
inference(subst, [[W, \$fot(skolemFOFtoCNF_W)], [Z, \$fot(X0)]], [12])).

cnf(14, plain, (~ big_f(X, Y) | Y = skolemFOFtoCNF_W),
inference(fof_to_cnf, [], [pel52_1])).

cnf(15, plain,
(~ big_f(skolemFOFtoCNF_Z_1(X2), skolemFOFtoCNF_Y(X2)) |
skolemFOFtoCNF_Y(X2) = skolemFOFtoCNF_W),
inference(subst,
[[X, \$fot(skolemFOFtoCNF_Z_1(X2))],
[Y, \$fot(skolemFOFtoCNF_Y(X2))]], [14])).

cnf(16, plain,
(X != skolemFOFtoCNF_Z_1(W) | skolemFOFtoCNF_Y(W) = W |
big_f(X, skolemFOFtoCNF_Y(W))), inference(fof_to_cnf, [], [pel52])).

cnf(17, plain,
(skolemFOFtoCNF_Z_1(W) != skolemFOFtoCNF_Z_1(W) |
skolemFOFtoCNF_Y(W) = W |
big_f(skolemFOFtoCNF_Z_1(W), skolemFOFtoCNF_Y(W))),
inference(subst, [[X, \$fot(skolemFOFtoCNF_Z_1(W))]], [16])).

cnf(18, plain, (skolemFOFtoCNF_Z_1(W) = skolemFOFtoCNF_Z_1(W)),
introduced(tautology, [refl, [\$fot(skolemFOFtoCNF_Z_1(W))]])).

cnf(19, plain,
(skolemFOFtoCNF_Y(W) = W |
big_f(skolemFOFtoCNF_Z_1(W), skolemFOFtoCNF_Y(W))),
inference(resolve,
[\$cnf(\$equal(skolemFOFtoCNF_Z_1(W), skolemFOFtoCNF_Z_1(W)))],
[18, 17])).

cnf(20, plain,
(skolemFOFtoCNF_Y(X2) = X2 |
big_f(skolemFOFtoCNF_Z_1(X2), skolemFOFtoCNF_Y(X2))),
inference(subst, [[W, \$fot(X2)]], [19])).

cnf(21, plain,
(skolemFOFtoCNF_Y(X2) = X2 | skolemFOFtoCNF_Y(X2) = skolemFOFtoCNF_W),
inference(resolve,
[\$cnf(big_f(skolemFOFtoCNF_Z_1(X2), skolemFOFtoCNF_Y(X2)))],
[20, 15])).

cnf(22, plain, (skolemFOFtoCNF_Y(skolemFOFtoCNF_W) = skolemFOFtoCNF_W),
inference(subst, [[X2, \$fot(skolemFOFtoCNF_W)]], [21])).

cnf(23, plain,
(skolemFOFtoCNF_W != skolemFOFtoCNF_W |
skolemFOFtoCNF_Y(skolemFOFtoCNF_W) != skolemFOFtoCNF_W |
skolemFOFtoCNF_Y(skolemFOFtoCNF_W) = skolemFOFtoCNF_W),
introduced(tautology,
[equality,
[\$cnf(\$equal(skolemFOFtoCNF_Y(skolemFOFtoCNF_W),
skolemFOFtoCNF_W)), [0, 0],
\$fot(skolemFOFtoCNF_W)]])).

cnf(24, plain,
(skolemFOFtoCNF_W != skolemFOFtoCNF_W |
skolemFOFtoCNF_Y(skolemFOFtoCNF_W) = skolemFOFtoCNF_W),
inference(resolve,
[\$cnf(\$equal(skolemFOFtoCNF_Y(skolemFOFtoCNF_W),
skolemFOFtoCNF_W))], [22, 23])).

cnf(25, plain,
(skolemFOFtoCNF_W != skolemFOFtoCNF_W |
skolemFOFtoCNF_X(skolemFOFtoCNF_W, X0) = X0 |
big_f(skolemFOFtoCNF_X(skolemFOFtoCNF_W, X0), skolemFOFtoCNF_W)),
inference(resolve,
[\$cnf(\$equal(skolemFOFtoCNF_Y(skolemFOFtoCNF_W),
skolemFOFtoCNF_W))], [24, 13])).

cnf(26, plain, (skolemFOFtoCNF_W = skolemFOFtoCNF_W),
introduced(tautology, [refl, [\$fot(skolemFOFtoCNF_W)]])).

cnf(27, plain,
(skolemFOFtoCNF_X(skolemFOFtoCNF_W, X0) = X0 |
big_f(skolemFOFtoCNF_X(skolemFOFtoCNF_W, X0), skolemFOFtoCNF_W)),
inference(resolve, [\$cnf(\$equal(skolemFOFtoCNF_W, skolemFOFtoCNF_W))],
[26, 25])).

cnf(28, plain,
(skolemFOFtoCNF_X(skolemFOFtoCNF_W, X1) = X1 |
big_f(skolemFOFtoCNF_X(skolemFOFtoCNF_W, X1), skolemFOFtoCNF_W)),
inference(subst, [[X0, \$fot(X1)]], [27])).

cnf(29, plain,
(skolemFOFtoCNF_X(skolemFOFtoCNF_W, X1) = X1 |
skolemFOFtoCNF_X(skolemFOFtoCNF_W, X1) = skolemFOFtoCNF_Z),
inference(resolve,
[\$cnf(big_f(skolemFOFtoCNF_X(skolemFOFtoCNF_W, X1),
skolemFOFtoCNF_W))], [28, 9])).

cnf(30, plain,
(skolemFOFtoCNF_X(skolemFOFtoCNF_W, skolemFOFtoCNF_Z) =
skolemFOFtoCNF_Z),
inference(subst, [[X1, \$fot(skolemFOFtoCNF_Z)]], [29])).

cnf(31, plain,
(skolemFOFtoCNF_X(skolemFOFtoCNF_W, skolemFOFtoCNF_Z) !=
skolemFOFtoCNF_Z | skolemFOFtoCNF_Z != skolemFOFtoCNF_Z |
skolemFOFtoCNF_X(skolemFOFtoCNF_W, skolemFOFtoCNF_Z) =
skolemFOFtoCNF_Z),
introduced(tautology,
[equality,
[\$cnf(~ \$equal(skolemFOFtoCNF_X(skolemFOFtoCNF_W,
skolemFOFtoCNF_Z),
skolemFOFtoCNF_Z)), [0],
\$fot(skolemFOFtoCNF_Z)]])).

cnf(32, plain,
(skolemFOFtoCNF_Z != skolemFOFtoCNF_Z |
skolemFOFtoCNF_X(skolemFOFtoCNF_W, skolemFOFtoCNF_Z) =
skolemFOFtoCNF_Z),
inference(resolve,
[\$cnf(\$equal(skolemFOFtoCNF_X(skolemFOFtoCNF_W,
skolemFOFtoCNF_Z),
skolemFOFtoCNF_Z))], [30, 31])).

cnf(33, plain,
(skolemFOFtoCNF_Y(skolemFOFtoCNF_W) != skolemFOFtoCNF_W |
skolemFOFtoCNF_Z != skolemFOFtoCNF_Z |
~ big_f(skolemFOFtoCNF_Z, skolemFOFtoCNF_W)),
inference(resolve,
[\$cnf(\$equal(skolemFOFtoCNF_X(skolemFOFtoCNF_W,
skolemFOFtoCNF_Z),
skolemFOFtoCNF_Z))], [32, 7])).

cnf(34, plain, (skolemFOFtoCNF_Z = skolemFOFtoCNF_Z),
introduced(tautology, [refl, [\$fot(skolemFOFtoCNF_Z)]])).

cnf(35, plain,
(skolemFOFtoCNF_Y(skolemFOFtoCNF_W) != skolemFOFtoCNF_W |
~ big_f(skolemFOFtoCNF_Z, skolemFOFtoCNF_W)),
inference(resolve, [\$cnf(\$equal(skolemFOFtoCNF_Z, skolemFOFtoCNF_Z))],
[34, 33])).

cnf(36, plain,
(skolemFOFtoCNF_W != skolemFOFtoCNF_W |
~ big_f(skolemFOFtoCNF_Z, skolemFOFtoCNF_W)),
inference(resolve,
[\$cnf(\$equal(skolemFOFtoCNF_Y(skolemFOFtoCNF_W),
skolemFOFtoCNF_W))], [24, 35])).

cnf(37, plain, (~ big_f(skolemFOFtoCNF_Z, skolemFOFtoCNF_W)),
inference(resolve, [\$cnf(\$equal(skolemFOFtoCNF_W, skolemFOFtoCNF_W))],
[26, 36])).

cnf(38, plain,
(X != skolemFOFtoCNF_Z | Y != skolemFOFtoCNF_W | big_f(X, Y)),
inference(fof_to_cnf, [], [pel52_1])).

cnf(39, plain,
(skolemFOFtoCNF_W != skolemFOFtoCNF_W |
skolemFOFtoCNF_Z != skolemFOFtoCNF_Z |
big_f(skolemFOFtoCNF_Z, skolemFOFtoCNF_W)),
inference(subst,
[[X, \$fot(skolemFOFtoCNF_Z)], [Y, \$fot(skolemFOFtoCNF_W)]],
[38])).

cnf(40, plain,
(skolemFOFtoCNF_Z != skolemFOFtoCNF_Z |
big_f(skolemFOFtoCNF_Z, skolemFOFtoCNF_W)),
inference(resolve, [\$cnf(\$equal(skolemFOFtoCNF_W, skolemFOFtoCNF_W))],
[26, 39])).

cnf(41, plain, (big_f(skolemFOFtoCNF_Z, skolemFOFtoCNF_W)),
inference(resolve, [\$cnf(\$equal(skolemFOFtoCNF_Z, skolemFOFtoCNF_Z))],
[34, 40])).

cnf(42, plain, (\$false),
inference(resolve, [\$cnf(big_f(skolemFOFtoCNF_Z, skolemFOFtoCNF_W))],
[41, 37])).
SZS output end CNFRefutation for data/problems/all/SYN075+1.tptp
```

### Sample solution for MGT019+2

```Problem: data/problems/all/MGT019+2.tptp

Goal:
~(!E T.
environment E /\
subpopulations first_movers efficient_producers E T ==>
greater (disbanding_rate first_movers T)
(disbanding_rate efficient_producers T)) /\
(!T.
greater (disbanding_rate first_movers T)
(disbanding_rate efficient_producers T) /\
greater_or_equal (founding_rate efficient_producers T)
(founding_rate first_movers T) ==>
greater (growth_rate efficient_producers T)
(growth_rate first_movers T)) /\
(!X Y. greater_or_equal X Y ==> greater X Y \/ X = Y) /\
(!E.
environment E /\ stable E ==>
?To.
in_environment E To /\
!T.
subpopulations first_movers efficient_producers E T /\
greater_or_equal T To ==>
greater_or_equal (founding_rate efficient_producers T)
(founding_rate first_movers T)) ==>
!E.
environment E /\ stable E ==>
?To.
in_environment E To /\
!T.
subpopulations first_movers efficient_producers E T /\
greater_or_equal T To ==>
greater (growth_rate efficient_producers T)
(growth_rate first_movers T)

Clauses:
~greater (disbanding_rate first_movers skolemFOFtoCNF_T)
(disbanding_rate efficient_producers skolemFOFtoCNF_T) /\
environment skolemFOFtoCNF_E /\
subpopulations first_movers efficient_producers skolemFOFtoCNF_E
skolemFOFtoCNF_T /\
(~greater (disbanding_rate first_movers \$T)
(disbanding_rate efficient_producers \$T) \/
~greater_or_equal (founding_rate efficient_producers \$T)
(founding_rate first_movers \$T) \/
greater (growth_rate efficient_producers \$T)
(growth_rate first_movers \$T)) /\
(~greater_or_equal \$X \$Y \/ \$X = \$Y \/ greater \$X \$Y) /\
(~environment \$E \/ ~stable \$E \/
in_environment \$E (skolemFOFtoCNF_To \$E)) /\
(~environment \$E \/ ~greater_or_equal \$T (skolemFOFtoCNF_To \$E) \/
~stable \$E \/ ~subpopulations first_movers efficient_producers \$E \$T \/
greater_or_equal (founding_rate efficient_producers \$T)
(founding_rate first_movers \$T)) /\ environment skolemFOFtoCNF_E_1 /\
stable skolemFOFtoCNF_E_1 /\
(~greater (growth_rate efficient_producers (skolemFOFtoCNF_T_1 \$To))
(growth_rate first_movers (skolemFOFtoCNF_T_1 \$To)) \/
~in_environment skolemFOFtoCNF_E_1 \$To) /\
(~in_environment skolemFOFtoCNF_E_1 \$To \/
greater_or_equal (skolemFOFtoCNF_T_1 \$To) \$To) /\
(~in_environment skolemFOFtoCNF_E_1 \$To \/
subpopulations first_movers efficient_producers skolemFOFtoCNF_E_1
(skolemFOFtoCNF_T_1 \$To))

SZS status CounterSatisfiable for data/problems/all/MGT019+2.tptp

SZS output start Saturation for data/problems/all/MGT019+2.tptp
|- ~greater (disbanding_rate first_movers skolemFOFtoCNF_T)
(disbanding_rate efficient_producers skolemFOFtoCNF_T)
|- environment skolemFOFtoCNF_E
|- subpopulations first_movers efficient_producers skolemFOFtoCNF_E
skolemFOFtoCNF_T
|- ~greater (disbanding_rate first_movers \$T)
(disbanding_rate efficient_producers \$T) \/
~greater_or_equal (founding_rate efficient_producers \$T)
(founding_rate first_movers \$T) \/
greater (growth_rate efficient_producers \$T)
(growth_rate first_movers \$T)
|- ~greater_or_equal \$X \$Y \/ \$X = \$Y \/ greater \$X \$Y
|- ~environment \$E \/ ~stable \$E \/
in_environment \$E (skolemFOFtoCNF_To \$E)
|- ~environment \$E \/ ~greater_or_equal \$T (skolemFOFtoCNF_To \$E) \/
~stable \$E \/ ~subpopulations first_movers efficient_producers \$E \$T \/
greater_or_equal (founding_rate efficient_producers \$T)
(founding_rate first_movers \$T)
|- environment skolemFOFtoCNF_E_1
|- stable skolemFOFtoCNF_E_1
|- ~greater (growth_rate efficient_producers (skolemFOFtoCNF_T_1 \$To))
(growth_rate first_movers (skolemFOFtoCNF_T_1 \$To)) \/
~in_environment skolemFOFtoCNF_E_1 \$To
|- ~in_environment skolemFOFtoCNF_E_1 \$To \/
greater_or_equal (skolemFOFtoCNF_T_1 \$To) \$To
|- ~in_environment skolemFOFtoCNF_E_1 \$To \/
subpopulations first_movers efficient_producers skolemFOFtoCNF_E_1
(skolemFOFtoCNF_T_1 \$To)
|- in_environment skolemFOFtoCNF_E_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1)
|- greater_or_equal
(skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1))
(skolemFOFtoCNF_To skolemFOFtoCNF_E_1)
|- subpopulations first_movers efficient_producers skolemFOFtoCNF_E_1
(skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1))
|- skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1) =
skolemFOFtoCNF_To skolemFOFtoCNF_E_1 \/
greater (skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1))
(skolemFOFtoCNF_To skolemFOFtoCNF_E_1)
|- ~greater_or_equal skolemFOFtoCNF_T
(skolemFOFtoCNF_To skolemFOFtoCNF_E) \/ ~stable skolemFOFtoCNF_E \/
greater_or_equal (founding_rate efficient_producers skolemFOFtoCNF_T)
(founding_rate first_movers skolemFOFtoCNF_T)
|- greater_or_equal
(founding_rate efficient_producers
(skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1)))
(founding_rate first_movers
(skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1)))
|- founding_rate efficient_producers
(skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1)) =
founding_rate first_movers
(skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1)) \/
greater
(founding_rate efficient_producers
(skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1)))
(founding_rate first_movers
(skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1)))
|- ~greater
(disbanding_rate first_movers
(skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1)))
(disbanding_rate efficient_producers
(skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1))) \/
greater
(growth_rate efficient_producers
(skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1)))
(growth_rate first_movers
(skolemFOFtoCNF_T_1 (skolemFOFtoCNF_To skolemFOFtoCNF_E_1)))
SZS output end Saturation for data/problems/all/MGT019+2.tptp
```

### Sample solution for SWV010+1

```Goal:
a_holds (key at t) /\ party_of_protocol a /\
message (sent a b (a, an_a_nonce)) /\ a_stored (b, an_a_nonce) /\
(!U V W X Y Z.
message (sent t a (triple (encrypt (quadruple Y Z W V) at) X U)) /\
a_stored (Y, Z) ==>
message (sent a Y (X, encrypt U W)) /\ a_holds (key W Y)) /\
b_holds (key bt t) /\ party_of_protocol b /\ fresh_to_b an_a_nonce /\
(!U V.
message (sent U b (U, V)) /\ fresh_to_b V ==>
message
(sent b t
(triple b (generate_b_nonce V)
(encrypt (triple U V (generate_expiration_time V)) bt))) /\
b_stored (U, V)) /\
(!V X Y.
message
(sent X b
(encrypt (triple X V (generate_expiration_time Y)) bt,
encrypt (generate_b_nonce Y) V)) /\ b_stored (X, Y) ==>
b_holds (key V X)) /\ t_holds (key at a) /\ t_holds (key bt b) /\
party_of_protocol t /\
(!U V W X Y Z X1.
message (sent U t (triple U V (encrypt (triple W X Y) Z))) /\
t_holds (key Z U) /\ t_holds (key X1 W) ==>
message
(sent t W
(triple (encrypt (quadruple U X (generate_key X) Y) X1)
(encrypt (triple W (generate_key X) Y) Z) V))) ==> F

Clauses:
a_holds (key at t) /\ party_of_protocol a /\
message (sent a b (a, an_a_nonce)) /\ a_stored (b, an_a_nonce) /\
(~a_stored (\$Y, \$Z) \/
~message (sent t a (triple (encrypt (quadruple \$Y \$Z \$W \$V) at) \$X \$U)) \/
a_holds (key \$W \$Y)) /\
(~a_stored (\$Y, \$Z) \/
~message (sent t a (triple (encrypt (quadruple \$Y \$Z \$W \$V) at) \$X \$U)) \/
message (sent a \$Y (\$X, encrypt \$U \$W))) /\ b_holds (key bt t) /\
party_of_protocol b /\ fresh_to_b an_a_nonce /\
(~fresh_to_b \$V \/ ~message (sent \$U b (\$U, \$V)) \/ b_stored (\$U, \$V)) /\
(~fresh_to_b \$V \/ ~message (sent \$U b (\$U, \$V)) \/
message
(sent b t
(triple b (generate_b_nonce \$V)
(encrypt (triple \$U \$V (generate_expiration_time \$V)) bt)))) /\
(~b_stored (\$X, \$Y) \/
~message
(sent \$X b
(encrypt (triple \$X \$V (generate_expiration_time \$Y)) bt,
encrypt (generate_b_nonce \$Y) \$V)) \/ b_holds (key \$V \$X)) /\
t_holds (key at a) /\ t_holds (key bt b) /\ party_of_protocol t /\
(~message (sent \$U t (triple \$U \$V (encrypt (triple \$W \$X \$Y) \$Z))) \/
~t_holds (key \$X1 \$W) \/ ~t_holds (key \$Z \$U) \/
message
(sent t \$W
(triple (encrypt (quadruple \$U \$X (generate_key \$X) \$Y) \$X1)
(encrypt (triple \$W (generate_key \$X) \$Y) \$Z) \$V)))

SZS status Satisfiable for data/problems/all/SWV010+1.tptp

SZS output start Saturated for data/problems/all/SWV010+1.tptp
|- a_holds (key at t)
|- party_of_protocol a
|- message (sent a b (a, an_a_nonce))
|- a_stored (b, an_a_nonce)
|- ~a_stored (\$Y, \$Z) \/
~message
(sent t a (triple (encrypt (quadruple \$Y \$Z \$W \$V) at) \$X \$U)) \/
a_holds (key \$W \$Y)
|- ~a_stored (\$Y, \$Z) \/
~message
(sent t a (triple (encrypt (quadruple \$Y \$Z \$W \$V) at) \$X \$U)) \/
message (sent a \$Y (\$X, encrypt \$U \$W))
|- b_holds (key bt t)
|- party_of_protocol b
|- fresh_to_b an_a_nonce
|- ~fresh_to_b \$V \/ ~message (sent \$U b (\$U, \$V)) \/ b_stored (\$U, \$V)
|- ~fresh_to_b \$V \/ ~message (sent \$U b (\$U, \$V)) \/
message
(sent b t
(triple b (generate_b_nonce \$V)
(encrypt (triple \$U \$V (generate_expiration_time \$V)) bt)))
|- ~b_stored (\$X, \$Y) \/
~message
(sent \$X b
(encrypt (triple \$X \$V (generate_expiration_time \$Y)) bt,
encrypt (generate_b_nonce \$Y) \$V)) \/ b_holds (key \$V \$X)
|- t_holds (key at a)
|- t_holds (key bt b)
|- party_of_protocol t
|- ~message (sent \$U t (triple \$U \$V (encrypt (triple \$W \$X \$Y) \$Z))) \/
~t_holds (key \$X1 \$W) \/ ~t_holds (key \$Z \$U) \/
message
(sent t \$W
(triple (encrypt (quadruple \$U \$X (generate_key \$X) \$Y) \$X1)
(encrypt (triple \$W (generate_key \$X) \$Y) \$Z) \$V))
|- b_stored (a, an_a_nonce)
|- message
(sent b t
(triple b (generate_b_nonce an_a_nonce)
(encrypt
(triple a an_a_nonce (generate_expiration_time an_a_nonce))
bt)))
|- ~t_holds (key \$_32 a) \/
message
(sent t a
(triple
(encrypt
(generate_expiration_time an_a_nonce)) \$_32)
(encrypt
(triple a (generate_key an_a_nonce)
(generate_expiration_time an_a_nonce)) bt)
(generate_b_nonce an_a_nonce)))
|- message
(sent t a
(triple
(encrypt
(generate_expiration_time an_a_nonce)) at)
(encrypt
(triple a (generate_key an_a_nonce)
(generate_expiration_time an_a_nonce)) bt)
(generate_b_nonce an_a_nonce)))
|- message
(sent a b
(encrypt
(triple a (generate_key an_a_nonce)
(generate_expiration_time an_a_nonce)) bt,
encrypt (generate_b_nonce an_a_nonce) (generate_key an_a_nonce)))
|- a_holds (key (generate_key an_a_nonce) b)
|- b_holds (key (generate_key an_a_nonce) a)
SZS output end Saturated for data/problems/all/SWV010+1.tptp
```

Dominique Pastre
Université René Descartes Paris‑5, France

### Sample solution for SYN075+1

```SZS status Theorem for SYN075+1.p

SZS output start proof for SYN075+1.p

* * * * * * * * * * * * * * * * * * * * * * * *
in the following, N is the number of a (sub)theorem
E is the current step
hyp(N,H,E) means that H is an hypothesis of (sub)theorem N
concl(N,C,E) means that C is the conclusion of (sub)theorem N
newconcl(N,C,E) means that the new conclusion of N is C
(C replaces the precedent conclusion)
a subtheorem N0-i or N0+i is a subtheorem of the (sub)theorem N0
N0 is proved if all N0-i have been proved (&-node)
or if one N0+i have been proved (|-node)
the initial theorem is numbered 0

* * * theorem to be proved
?[D]:![B]: (?[C]:![A]: (big_f(A, B)<=>A=C)<=>B=D)

* * * proof :

* * * * * * theorem 0 * * * * * *
newconcl(0, ?[D]:![B]: (?[C]:![A]: (big_f(A, B)<=>A=C)<=>B=D), 1)
explanation : initial theorem
--------------------------------------------------------- action(ini)
addhyp(0, ?[C, D]:![A, B]: (big_f(A, B)<=>A=C&B=D), 2)
explanation : rule pel52_1_existe
[addhyp(_, ?[C, D]:![A, B]: (big_f(A, B)<=>A=C&B=D), _)]
built from the axiom pel52_1
--------------------------------------------------------- rule(pel52_1_existe)
create object(s) z2 z1
addhyp(0, ![A, B]: (big_f(A, B)<=>A=z1&B=z2), 3)
because hyp(0, ?[C, D]:![A, B]: (big_f(A, B)<=>A=C&B=D), 2)
explanation : treatment of the existential hypothesis
--------------------------------------------------------- rule(exists)
explanation : local rule1 rulhyp__3__2
(rule built from the universal hypothesis ![A, B]: (big_f(A, B)<=>A=z1&B=z2)
--------------------------------------------------------- rule(rulhyp__3__2)

* * * * * * creation * * * * * * sub-theorem 0+2 * * * * *
all the hypotheses of (sub)theorem 0 are hypotheses of subtheorem 0+2
newconcl('0+2', ![B]: (?[C]:![A]: (big_f(A, B)<=>A=C)<=>B=z2), 20)
because concl(0, ?[D]:![B]: (?[C]:![A]: (big_f(A, B)<=>A=C)<=>B=D), 1)
explanation : z2 is tried for the existential variable
--------------------------------------------------------- action(demconclexi)
create object(s) z6
newconcl('0+2', ?[B]:![A]: (big_f(A, z6)<=>A=B)<=>z6=z2, 21)
because concl((0, ![B]: (?[C]:![A]: (big_f(A, B)<=>A=C)<=>B=z2)), 20)
explanation : the variables of the conclusion are instantiated
--------------------------------------------------------- rule(!)
newconcl('0+2', (?[B]:![A]: (big_f(A, z6)<=>A=B)=>z6=z2)& (z6=z2=> ?[B]:![A]: (big_f(A, z6)<=>A=B)))
because concl('0+2', ?[B]:![A]: (big_f(A, z6)<=>A=B)<=>z6=z2, 21)
explanation : A<=>B is replaced by (A=>B)&(B=>A)
--------------------------------------------------------- rule(<=>)

* * * * * * creation * * * * * * sub-theorem 0+2-1 * * * * *
all the hypotheses of (sub)theorem 0+2 are hypotheses of subtheorem 0+2-1
newconcl('0+2-1', ?[B]:![A]: (big_f(A, z6)<=>A=B)=>z6=z2, 23)
because concl('0+2', (?[B]:![A]: (big_f(A, z6)<=>A=B)=>z6=z2)& (z6=z2=> ?[B]:![A]: (big_f(A, z6)<=>A=B)), 22)
explanation : to prove a conjunction, prove all the elements of the conjunction
--------------------------------------------------------- action(prove_conj)
newconcl(0+2-1, z6=z2, 24)
because concl('0+2-1', ?[B]:![A]: (big_f(A, z6)<=>A=B)=>z6=z2, 23)
explanation : to prove H=>C, assume H and prove C
--------------------------------------------------------- rule(=>)
create object(s) z7
because hyp('0+2-1', ?[B]:![A]: (big_f(A, z6)<=>A=B), 24)
explanation : treatment of the existential hypothesis
--------------------------------------------------------- rule(exists)
explanation : local rule1 rulhyp__25__1
(rule built from the universal hypothesis ![A]: (big_f(A, z6)<=>A=z7)
--------------------------------------------------------- rule(rulhyp__25__1)
because hyp(0+2-1, big_f(z7, z6), 26)
explanation : local rule rulhyp__3__1
[if, hyp(A, big_f(_, B), _), then, addhyp(A, B=z2, _)]
(rule built from the universal hypothesis ![A, B]: (big_f(A, B)<=>A=z1&B=z2) )
--------------------------------------------------------- rule(rulhyp__3__1)
newconcl(0+2-1, z2=z2, 30)
because hyp(0+2-1, z2=z6, 27), concl(0+2-1, z6=z2, 24)
explanation : z6 is replaced by z2 in the conclusion
--------------------------------------------------------- action(treatequal_concl)
newconcl(0+2-1, true, 31)
because concl(0+2-1, z2=z2, 30)
explanation : trivial conclusion
--------------------------------------------------------- rule(concl_stop_trivial)
newconcl('0+2', z6=z2=> ?[B]:![A]: (big_f(A, z6)<=>A=B), 32)
because concl(0+2-1, true, 31)
explanation : the conclusion ?[B]:![A]: (big_f(A, z6)<=>A=B)=>z6=z2 of the (sub)theorem 0+2 has been proved ( subtheorem 0+2-1 )
--------------------------------------------------------- action(return_proof)

* * * * * * creation * * * * * * sub-theorem 0+2-2 * * * * *
all the hypotheses of (sub)theorem 0+2 are hypotheses of subtheorem 0+2-2
newconcl('0+2-2', z6=z2=> ?[B]:![A]: (big_f(A, z6)<=>A=B), 33)
explanation : proof of the last element of the conjunction
--------------------------------------------------------- action(prove_conj)
newconcl('0+2-2', ?[B]:![A]: (big_f(A, z6)<=>A=B), 34)
because concl('0+2-2', z6=z2=> ?[B]:![A]: (big_f(A, z6)<=>A=B), 33)
explanation : to prove H=>C, assume H and prove C
--------------------------------------------------------- rule(=>)
newconcl('0+2-2', ?[B]:![A]: (big_f(A, z2)<=>A=B), 35)
because hyp('0+2-2', z2=z6, 34), concl('0+2-2', ?[B]:![A]: (big_f(A, z6)<=>A=B), 34)
explanation : z6 is replaced by z2 in the conclusion
--------------------------------------------------------- action(treatequal_concl)

* * * * * * creation * * * * * * sub-theorem 0+2-2+1 * * * * *
all the hypotheses of (sub)theorem 0+2-2 are hypotheses of subtheorem 0+2-2+1
newconcl('0+2-2+1', ![A]: (big_f(A, z2)<=>A=z1), 36)
because concl('0+2-2', ?[B]:![A]: (big_f(A, z2)<=>A=B), 35)
explanation : z1 is tried for the existential variable
--------------------------------------------------------- action(demconclexi)
create object(s) z8
newconcl(0+2-2+1, big_f(z8, z2)<=>z8=z1, 37)
because concl((0, ![A]: (big_f(A, z2)<=>A=z1)), 36)
explanation : the variables of the conclusion are instantiated
--------------------------------------------------------- rule(!)
newconcl(0+2-2+1, (big_f(z8, z2)=>z8=z1)& (z8=z1=>big_f(z8, z2)))
because concl(0+2-2+1, big_f(z8, z2)<=>z8=z1, 37)
explanation : A<=>B is replaced by (A=>B)&(B=>A)
--------------------------------------------------------- rule(<=>)

* * * * * * creation * * * * * * sub-theorem 0+2-2+1-1 * * * * *
all the hypotheses of (sub)theorem 0+2-2+1 are hypotheses of subtheorem 0+2-2+1-1
newconcl(0+2-2+1-1, big_f(z8, z2)=>z8=z1, 39)
because concl(0+2-2+1, (big_f(z8, z2)=>z8=z1)& (z8=z1=>big_f(z8, z2)), 38)
explanation : to prove a conjunction, prove all the elements of the conjunction
--------------------------------------------------------- action(prove_conj)
newconcl(0+2-2+1-1, z8=z1, 40)
because concl(0+2-2+1-1, big_f(z8, z2)=>z8=z1, 39)
explanation : to prove H=>C, assume H and prove C
--------------------------------------------------------- rule(=>)
because hyp(0+2-2+1-1, big_f(z8, z2), 40)
explanation : local rule rulhyp__3__
[if, hyp(A, big_f(B, _), _), then, addhyp(A, B=z1, _)]
(rule built from the universal hypothesis ![A, B]: (big_f(A, B)<=>A=z1&B=z2) )
--------------------------------------------------------- rule(rulhyp__3__)
newconcl(0+2-2+1-1, z1=z1, 42)
because hyp(0+2-2+1-1, z1=z8, 41), concl(0+2-2+1-1, z8=z1, 40)
explanation : z8 is replaced by z1 in the conclusion
--------------------------------------------------------- action(treatequal_concl)
newconcl(0+2-2+1-1, true, 43)
because concl(0+2-2+1-1, z1=z1, 42)
explanation : trivial conclusion
--------------------------------------------------------- rule(concl_stop_trivial)
newconcl(0+2-2+1, z8=z1=>big_f(z8, z2), 44)
because concl(0+2-2+1-1, true, 43)
explanation : the conclusion big_f(z8, z2)=>z8=z1 of the (sub)theorem 0+2-2+1 has been proved ( subtheorem 0+2-2+1-1 )
--------------------------------------------------------- action(return_proof)

* * * * * * creation * * * * * * sub-theorem 0+2-2+1-2 * * * * *
all the hypotheses of (sub)theorem 0+2-2+1 are hypotheses of subtheorem 0+2-2+1-2
newconcl(0+2-2+1-2, z8=z1=>big_f(z8, z2), 45)
explanation : proof of the last element of the conjunction
--------------------------------------------------------- action(prove_conj)
newconcl(0+2-2+1-2, big_f(z8, z2), 46)
because concl(0+2-2+1-2, z8=z1=>big_f(z8, z2), 45)
explanation : to prove H=>C, assume H and prove C
--------------------------------------------------------- rule(=>)
newconcl(0+2-2+1-2, big_f(z1, z2), 47)
because hyp(0+2-2+1-2, z1=z8, 46), concl(0+2-2+1-2, big_f(z8, z2), 46)
explanation : z8 is replaced by z1 in the conclusion
--------------------------------------------------------- action(treatequal_concl)
newconcl(0+2-2+1-2, true, 48)
because hyp(0+2-2+1-2, big_f(z1, z2), 4), concl(0+2-2+1-2, big_f(z1, z2), 47)
explanation : the conclusion big_f(z1, z2) to be proved is a hypothesis
--------------------------------------------------------- rule(stop_hyp_concl)
newconcl(0+2-2+1, true, 49)
because concl(0+2-2+1-2, true, 48)
explanation : the conclusion z8=z1=>big_f(z8, z2) of the (sub)theorem 0+2-2+1 has been proved ( subtheorem 0+2-2+1-2 )
--------------------------------------------------------- action(return_proof)
newconcl(0+2-2, true, 50)
because concl(0+2-2+1, true, 49)
explanation : la conclusion du (sub-)theorem 0+2-2 a ete provede (sub-theorem 0+2-2+1 )
--------------------------------------------------------- action(return_proofexi)
newconcl(0+2, true, 51)
because concl(0+2-2, true, 50)
explanation : the conclusion z6=z2=> ?[B]:![A]: (big_f(A, z6)<=>A=B) of the (sub)theorem 0+2 has been proved ( subtheorem 0+2-2 )
--------------------------------------------------------- action(return_proof)
newconcl(0, true, 52)
because concl(0+2, true, 51)
explanation : la conclusion du (sub-)theorem 0 a ete provede (sub-theorem 0+2 )
--------------------------------------------------------- action(return_proofexi)
then the initial theorem is proved
* * * * * * * * * * * * * * * * * * * * * * * *

SZS output end proof for SYN075+1.p
```

Koen Claessen
Chalmers University of Technology, Sweden

### Sample solution for MGT019+2

```% domain size is 1
disbanding_rate(!1,!1) = !1
efficient_producers = !1
environment(!1) <=> \$true
first_movers = !1
founding_rate(!1,!1) = !1
greater(!1,!1) <=> \$false
greater_or_equal(!1,!1) <=> \$true
growth_rate(!1,!1) = !1
in_environment(!1,!1) <=> \$true
stable(!1) <=> \$true
subpopulations(!1,!1,!1,!1) <=> \$true
```

### Sample solution for SWV010+1

```% domain size is 1
a_holds(X1)
a_stored(X1)
b_holds(X1)
b_stored(X1)
fresh_to_b(X1)
message(X1)
party_of_protocol(X1)
t_holds(X1)
```

## randoCoP 1.1

Jens Otten, Thomas Raths
University of Potsdam, Germany

### Explanation of Inference Rules

• Terms and variables are represented by Prolog terms and Prolog variables, negation is represented by -.
• I^[t1,t2,..,tn] represents the atom I(t1,t2,..,tn), introduced during the clausal form translation, or the Skolem term f_I(t1,t2,..,tn).
• The substitution [[X1,..,Xn],[t1,..,tn]] represents the assignments X1:=t1, .., Xn:=tn

### Sample solution for SYN075+1

```Translation into (disjunctive) clausal form:
(1)  [-(6 ^ [_7142, _6164]), p1(4 ^ [_7142, _6164], 1 ^ [_6164])]
(2)  [-(6 ^ [_7142, _6164]), -(equal(4 ^ [_7142, _6164], _7142))]
(3)  [-(5 ^ [_7142, _6164]), equal(4 ^ [_7142, _6164], _7142)]
(4)  [-(5 ^ [_7142, _6164]), -(p1(4 ^ [_7142, _6164], 1 ^ [_6164]))]
(5)  [-(7 ^ [_6164]), 5 ^ [_7142, _6164], 6 ^ [_7142, _6164]]
(6)  [-(7 ^ [_6164]), -(equal(1 ^ [_6164], _6164))]
(7)  [-(3 ^ [_6164]), -(p1(_7217, 1 ^ [_6164])), equal(_7217, 2 ^ [_6164])]
(8)  [-(3 ^ [_6164]), p1(_7217, 1 ^ [_6164]), -(equal(_7217, 2 ^ [_6164]))]
(9)  [-(3 ^ [_6164]), equal(1 ^ [_6164], _6164)]
(10)  [7 ^ [_6164], 3 ^ [_6164]]
(11)  [-(equal(_4118, _4118))]
(12)  [equal(_4218, _4263), -(equal(_4263, _4218))]
(13)  [-(equal(_4454, _4565)), equal(_4454, _4510), equal(_4510, _4565)]
(14)  [-(p1(_4903, _4958)), equal(_4847, _4903), p1(_4847, _4958)]
(15)  [-(p1(_5351, _5296)), equal(_5240, _5296), p1(_5351, _5240)]
(16)  [p1(_6945, _6950), -(equal(_6945, 1 ^ []))]
(17)  [p1(_6945, _6950), -(equal(_6950, 2 ^ []))]
(18)  [-(p1(_6945, _6950)), equal(_6945, 1 ^ []), equal(_6950, 2 ^ [])]

We prove that the given clauses are valid, i.e. for
a given substitution they evaluate to true for all
interpretations. The proof is by contradiction:
Assume there is an interpretation so that the given
clauses evaluate to false. Then in each clause there
has to be at least one literal that is false.

Then clause (10) under the substitution [[_6164], [2 ^ []]]
is false if at least one of the following is false:
[7 ^ [2 ^ []], 3 ^ [2 ^ []]]
1 Assume 7 ^ [2 ^ []] is false.
Then clause (5) under the substitution [[_7142, _6164], [1 ^ [], 2 ^ []]]
is false if at least one of the following is false:
[5 ^ [1 ^ [], 2 ^ []], 6 ^ [1 ^ [], 2 ^ []]]
1.1 Assume 5 ^ [1 ^ [], 2 ^ []] is false.
Then clause (3) under the substitution [[_6164, _7142], [2 ^ [], 1 ^ []]]
is false if at least one of the following is false:
[equal(4 ^ [1 ^ [], 2 ^ []], 1 ^ [])]
1.1.1 Assume equal(4 ^ [1 ^ [], 2 ^ []], 1 ^ []) is false.
Then clause (16) under the substitution [[_6950, _6945], [1 ^ [2 ^ []], 4 ^ [1 ^ [], 2 ^ []]]]
is false if at least one of the following is false:
[p1(4 ^ [1 ^ [], 2 ^ []], 1 ^ [2 ^ []])]
1.1.1.1 Assume p1(4 ^ [1 ^ [], 2 ^ []], 1 ^ [2 ^ []]) is false.
Then clause (4) under the substitution [[_6164, _7142], [2 ^ [], 1 ^ []]]
is false if at least one of the following is false:
[-(5 ^ [1 ^ [], 2 ^ []])]
1.1.1.1.1 Assume -(5 ^ [1 ^ [], 2 ^ []]) is false.
This is a contradiction to assumption 1.1.
1.2 Assume 6 ^ [1 ^ [], 2 ^ []] is false.
Then clause (1) under the substitution [[_6164, _7142], [2 ^ [], 1 ^ []]]
is false if at least one of the following is false:
[p1(4 ^ [1 ^ [], 2 ^ []], 1 ^ [2 ^ []])]
1.2.1 Assume p1(4 ^ [1 ^ [], 2 ^ []], 1 ^ [2 ^ []]) is false.
Then clause (18) under the substitution [[_6950, _6945], [1 ^ [2 ^ []], 4 ^ [1 ^ [], 2 ^ []]]]
is false if at least one of the following is false:
[equal(4 ^ [1 ^ [], 2 ^ []], 1 ^ []), equal(1 ^ [2 ^ []], 2 ^ [])]
1.2.1.1 Assume equal(4 ^ [1 ^ [], 2 ^ []], 1 ^ []) is false.
Then clause (2) under the substitution [[_6164, _7142], [2 ^ [], 1 ^ []]]
is false if at least one of the following is false:
[-(6 ^ [1 ^ [], 2 ^ []])]
1.2.1.1.1 Assume -(6 ^ [1 ^ [], 2 ^ []]) is false.
This is a contradiction to assumption 1.2.
1.2.1.2 Assume equal(1 ^ [2 ^ []], 2 ^ []) is false.
Then clause (6) under the substitution [[_6164], [2 ^ []]]
is false if at least one of the following is false:
[-(7 ^ [2 ^ []])]
1.2.1.2.1 Assume -(7 ^ [2 ^ []]) is false.
This is a contradiction to assumption 1.
2 Assume 3 ^ [2 ^ []] is false.
Then clause (7) under the substitution [[_7217, _6164], [2 ^ [2 ^ []], 2 ^ []]]
is false if at least one of the following is false:
[-(p1(2 ^ [2 ^ []], 1 ^ [2 ^ []])), equal(2 ^ [2 ^ []], 2 ^ [2 ^ []])]
2.1 Assume -(p1(2 ^ [2 ^ []], 1 ^ [2 ^ []])) is false.
Then clause (14) under the substitution [[_4903, _4958, _4847], [2 ^ [2 ^ []], 1 ^ [2 ^ []], 2 ^ [2 ^ []]]]
is false if at least one of the following is false:
[-(p1(2 ^ [2 ^ []], 1 ^ [2 ^ []])), equal(2 ^ [2 ^ []], 2 ^ [2 ^ []])]
2.1.1 Assume -(p1(2 ^ [2 ^ []], 1 ^ [2 ^ []])) is false.
Then clause (17) under the substitution [[_6950, _6945], [1 ^ [2 ^ []], 2 ^ [2 ^ []]]]
is false if at least one of the following is false:
[-(equal(1 ^ [2 ^ []], 2 ^ []))]
2.1.1.1 Assume -(equal(1 ^ [2 ^ []], 2 ^ [])) is false.
Then clause (9) under the substitution [[_6164], [2 ^ []]]
is false if at least one of the following is false:
[-(3 ^ [2 ^ []])]
2.1.1.1.1 Assume -(3 ^ [2 ^ []]) is false.
This is a contradiction to assumption 2.
2.1.2 Assume equal(2 ^ [2 ^ []], 2 ^ [2 ^ []]) is false.
Then clause (8) under the substitution [[_6164, _7217], [2 ^ [], 2 ^ [2 ^ []]]]
is false if at least one of the following is false:
[-(3 ^ [2 ^ []]), p1(2 ^ [2 ^ []], 1 ^ [2 ^ []])]
2.1.2.1 Assume -(3 ^ [2 ^ []]) is false.
This is a contradiction to assumption 2.
2.1.2.2 Assume p1(2 ^ [2 ^ []], 1 ^ [2 ^ []]) is false.
This is a contradiction to assumption 2.1.
2.2 Assume equal(2 ^ [2 ^ []], 2 ^ [2 ^ []]) is false.
Then clause (11) under the substitution [[_4118], [2 ^ [2 ^ []]]]
is true.

Therefore there is no interpretation that makes all
given clauses simultaneously false. Hence the given
clauses are valid.
```

## SInE 0.3

Krystof Hoder
Charles University in Prague, Czech Republic

### Sample solution for SYN075+1

```# Problem is unsatisfiable (or provable), constructing proof object
# SZS status Theorem
# SZS output start CNFRefutation.
fof(1, axiom,?[X1]:?[X2]:![X3]:![X4]:(big_f(X3,X4)<=>(equal(X3, X1)&equal(X4, X2))),file('/tmp/tmpHkvhK4/req', pel52_1)).
fof(2, conjecture,?[X2]:![X4]:(?[X1]:![X3]:(big_f(X3,X4)<=>equal(X3, X1))<=>equal(X4, X2)),file('/tmp/tmpHkvhK4/req', pel52)).
fof(3, negated_conjecture,~(?[X2]:![X4]:(?[X1]:![X3]:(big_f(X3,X4)<=>equal(X3, X1))<=>equal(X4, X2))),inference(assume_negation,[status(cth)],[2])).
fof(4, plain,?[X1]:?[X2]:![X3]:![X4]:((~(big_f(X3,X4))|(equal(X3, X1)&equal(X4, X2)))&((~(equal(X3, X1))|~(equal(X4, X2)))|big_f(X3,X4))),inference(fof_nnf,[status(thm)],[1])).
fof(5, plain,?[X5]:?[X6]:![X7]:![X8]:((~(big_f(X7,X8))|(equal(X7, X5)&equal(X8, X6)))&((~(equal(X7, X5))|~(equal(X8, X6)))|big_f(X7,X8))),inference(variable_rename,[status(thm)],[4])).
fof(6, plain,![X7]:![X8]:((~(big_f(X7,X8))|(equal(X7, esk1_0)&equal(X8, esk2_0)))&((~(equal(X7, esk1_0))|~(equal(X8, esk2_0)))|big_f(X7,X8))),inference(skolemize,[status(sab)],[5])).
fof(7, plain,![X7]:![X8]:(((equal(X7, esk1_0)|~(big_f(X7,X8)))&(equal(X8, esk2_0)|~(big_f(X7,X8))))&((~(equal(X7, esk1_0))|~(equal(X8, esk2_0)))|big_f(X7,X8))),inference(distribute,[status(thm)],[6])).
cnf(8,plain,(big_f(X1,X2)|X2!=esk2_0|X1!=esk1_0),inference(split_conjunct,[status(thm)],[7])).
cnf(9,plain,(X2=esk2_0|~big_f(X1,X2)),inference(split_conjunct,[status(thm)],[7])).
cnf(10,plain,(X1=esk1_0|~big_f(X1,X2)),inference(split_conjunct,[status(thm)],[7])).
fof(11, negated_conjecture,![X2]:?[X4]:((![X1]:?[X3]:((~(big_f(X3,X4))|~(equal(X3, X1)))&(big_f(X3,X4)|equal(X3, X1)))|~(equal(X4, X2)))&(?[X1]:![X3]:((~(big_f(X3,X4))|equal(X3, X1))&(~(equal(X3, X1))|big_f(X3,X4)))|equal(X4, X2))),inference(fof_nnf,[status(thm)],[3])).
fof(12, negated_conjecture,![X5]:?[X6]:((![X7]:?[X8]:((~(big_f(X8,X6))|~(equal(X8, X7)))&(big_f(X8,X6)|equal(X8, X7)))|~(equal(X6, X5)))&(?[X9]:![X10]:((~(big_f(X10,X6))|equal(X10, X9))&(~(equal(X10, X9))|big_f(X10,X6)))|equal(X6, X5))),inference(variable_rename,[status(thm)],[11])).
fof(13, negated_conjecture,![X5]:((![X7]:((~(big_f(esk4_2(X5,X7),esk3_1(X5)))|~(equal(esk4_2(X5,X7), X7)))&(big_f(esk4_2(X5,X7),esk3_1(X5))|equal(esk4_2(X5,X7), X7)))|~(equal(esk3_1(X5), X5)))&(![X10]:((~(big_f(X10,esk3_1(X5)))|equal(X10, esk5_1(X5)))&(~(equal(X10, esk5_1(X5)))|big_f(X10,esk3_1(X5))))|equal(esk3_1(X5), X5))),inference(skolemize,[status(sab)],[12])).
fof(14, negated_conjecture,![X5]:![X7]:![X10]:((((~(big_f(X10,esk3_1(X5)))|equal(X10, esk5_1(X5)))&(~(equal(X10, esk5_1(X5)))|big_f(X10,esk3_1(X5))))|equal(esk3_1(X5), X5))&(((~(big_f(esk4_2(X5,X7),esk3_1(X5)))|~(equal(esk4_2(X5,X7), X7)))&(big_f(esk4_2(X5,X7),esk3_1(X5))|equal(esk4_2(X5,X7), X7)))|~(equal(esk3_1(X5), X5)))),inference(shift_quantors,[status(thm)],[13])).
fof(15, negated_conjecture,![X5]:![X7]:![X10]:((((~(big_f(X10,esk3_1(X5)))|equal(X10, esk5_1(X5)))|equal(esk3_1(X5), X5))&((~(equal(X10, esk5_1(X5)))|big_f(X10,esk3_1(X5)))|equal(esk3_1(X5), X5)))&(((~(big_f(esk4_2(X5,X7),esk3_1(X5)))|~(equal(esk4_2(X5,X7), X7)))|~(equal(esk3_1(X5), X5)))&((big_f(esk4_2(X5,X7),esk3_1(X5))|equal(esk4_2(X5,X7), X7))|~(equal(esk3_1(X5), X5))))),inference(distribute,[status(thm)],[14])).
cnf(16,negated_conjecture,(esk4_2(X1,X2)=X2|big_f(esk4_2(X1,X2),esk3_1(X1))|esk3_1(X1)!=X1),inference(split_conjunct,[status(thm)],[15])).
cnf(17,negated_conjecture,(esk3_1(X1)!=X1|esk4_2(X1,X2)!=X2|~big_f(esk4_2(X1,X2),esk3_1(X1))),inference(split_conjunct,[status(thm)],[15])).
cnf(18,negated_conjecture,(esk3_1(X1)=X1|big_f(X2,esk3_1(X1))|X2!=esk5_1(X1)),inference(split_conjunct,[status(thm)],[15])).
cnf(25,negated_conjecture,(esk2_0=esk3_1(X2)|esk3_1(X2)=X2|esk5_1(X2)!=X1),inference(pm,[status(thm)],[9,18,theory(equality)])).
cnf(37,negated_conjecture,(esk3_1(X1)=esk2_0|esk3_1(X1)=X1),inference(er,[status(thm)],[25,theory(equality)])).
cnf(48,negated_conjecture,(esk3_1(X2)=X2|esk2_0!=X2),inference(ef,[status(thm)],[37,theory(equality)])).
cnf(60,negated_conjecture,(~big_f(esk4_2(X1,X2),X1)|esk4_2(X1,X2)!=X2|esk3_1(X1)!=X1|esk2_0!=X1),inference(pm,[status(thm)],[17,48,theory(equality)])).
cnf(71,negated_conjecture,(esk4_2(X1,X2)!=X2|esk3_1(X1)!=X1|esk2_0!=X1|esk1_0!=esk4_2(X1,X2)),inference(pm,[status(thm)],[60,8,theory(equality)])).
cnf(1021,negated_conjecture,(esk1_0=esk4_2(X1,X2)|esk4_2(X1,X2)=X2|esk3_1(X1)!=X1),inference(pm,[status(thm)],[10,16,theory(equality)])).
cnf(1085,negated_conjecture,(esk4_2(X3,X4)=X4|esk1_0!=X4|esk3_1(X3)!=X3),inference(ef,[status(thm)],[1021,theory(equality)])).
cnf(1132,negated_conjecture,(X2!=esk1_0|esk4_2(X1,X2)!=X2|esk3_1(X1)!=X1|esk2_0!=X1),inference(pm,[status(thm)],[71,1085,theory(equality)])).
cnf(1179,negated_conjecture,(esk3_1(X1)!=X1|X2!=esk1_0|esk2_0!=X1),inference(pm,[status(thm)],[1132,1085,theory(equality)])).
cnf(1247,negated_conjecture,(X2!=esk1_0|esk2_0!=X1),inference(pm,[status(thm)],[1179,48,theory(equality)])).
cnf(1299,negated_conjecture,(esk2_0!=X1),inference(er,[status(thm)],[1247,theory(equality)])).
cnf(1302,negated_conjecture,(\$false),inference(er,[status(thm)],[1299,theory(equality)])).
cnf(1304,negated_conjecture,(\$false),1302,['proof']).
# SZS output end CNFRefutation
```

## SInE-VD 0.3

Krystof Hoder
Charles University in Prague, Czech Republic

### Sample solution for SYN075+1

```Running slice lrs+1012_35_bd=off_bs=off_fde=none_600 for 195 deciseconds
------------------ SLICE UNSUCCESSFUL -------------------
=========== Statistics ==========
version: 7.45 8.01 (for CASC-21 only)
=== General:
time: 19.6s
memory: 18.4Mb
termination reason: time limit expired
=== Generating inferences:
resolution: 180
superposition: 448
equality_resolution: 26
=== Simplifying inferences:
propositional_tautology: 15
equational_tautology: 81
forward_subsumption: 449
=== Generated clauses:
total: 668
=== Retained clauses:
total: 115
selected: 111
currently_active: 111
currently_passive: 4
======= End of statistics =======
Running slice lrs+10_10:1_bs=off_fde=none_lcm=predicate_nwc=1.5_600 for 620 deciseconds
--------------------- PROVED ----------------------
%=========== Refutation ==========
fof(1, axiom, (?[X0,X1] : (![X2,X3] : ((big_f(X2,X3) <=> (X2=X0 & X3=X1))))), file(input, pel52_1)).
fof(21, plain, (?[X0,X1] : (![X2,X3] : ((big_f(X2,X3) <=> (X3=X1 & X2=X0))))), inference('normalize',[],[1])).
fof(25, plain, (?[X0,X1] : (![X2,X3] : ((big_f(X2,X3) <=> (X3=X1 & X2=X0))))), inference('definition folding',[],[21])).
fof(29, plain, (?[X0,X1] : (![X2,X3] : (((((~big_f(X2,X3)) | ((X3=X1 & X2=X0)))) & (((((~X3=X1) | (~X2=X0))) | big_f(X2,X3))))))), inference('NNF transformation',[],[25])).
fof(30, plain, (?[X0,X1] : (![X2,X3] : (((((~big_f(X2,X3)) | ((X3=X1 & X2=X0)))) & (((~X3=X1) | (~X2=X0) | big_f(X2,X3))))))), inference('flattening',[],[29])).
fof(31, plain, ((((~big_f(X2,X3)) | ((X3=\$s6 & X2=\$s5)))) & (((~X3=\$s6) | (~X2=\$s5) | big_f(X2,X3)))), inference('skolemization',[],[30])).
cnf(38, plain, (big_f(X2,X3) | ~X2=\$s5 | ~X3=\$s6), inference('cnf transformation',[],[31])).
cnf(46, plain, (~X1=\$s6 | big_f(\$s5,X1)), inference('equality resolution',[],[38])).
cnf(48, plain, (big_f(\$s5,\$s6)), inference('equality resolution',[],[46])).
cnf(36, plain, (X3=\$s6 | ~big_f(X2,X3)), inference('cnf transformation',[],[31])).
fof(2, negated_conjecture, (~(?[X1] : (![X3] : (((?[X0] : (![X2] : ((big_f(X2,X3) <=> X2=X0)))) <=> X3=X1))))), file(input, pel52)).
fof(22, negated_conjecture, (~(?[X0] : (![X1] : (((?[X2] : (![X3] : ((big_f(X3,X1) <=> X3=X2)))) <=> X1=X0))))), inference('rectify',[],[2])).
fof(23, negated_conjecture, (~(?[X0] : (![X1] : ((X1=X0 <=> (?[X2] : (![X3] : ((X3=X2 <=> big_f(X3,X1)))))))))), inference('normalize',[],[22])).
fof(24, negated_conjecture, (![X0] : (?[X1] : ((X1=X0 <~> (?[X2] : (![X3] : ((X3=X2 <=> big_f(X3,X1))))))))), inference('ENNF transformation',[],[23])).
fof(26, negated_conjecture, (![X0] : (?[X1] : ((((X1=X0 | (?[X2] : (![X3] : (((((~X3=X2) | big_f(X3,X1))) & (((~big_f(X3,X1)) | X3=X2)))))))) & (((~X1=X0) | (![X2] : (?[X3] : ((((X3=X2 | big_f(X3,X1))) & (((~X3=X2) | (~big_f(X3,X1)))))))))))))), inference('NNF transformation',[],[24])).
fof(27, negated_conjecture, (![X0] : (?[X1] : ((((X1=X0 | (?[X2] : (![X3] : (((((~X3=X2) | big_f(X3,X1))) & (((~big_f(X3,X1)) | X3=X2)))))))) & (((~X1=X0) | (![X4] : (?[X5] : ((((X5=X4 | big_f(X5,X1))) & (((~X5=X4) | (~big_f(X5,X1)))))))))))))), inference('rectify',[],[26])).
fof(28, negated_conjecture, (((\$s2(X0)=X0 | (((((~X3=\$s3(X1)) | big_f(X3,\$s2(X0)))) & (((~big_f(X3,\$s2(X0))) | X3=\$s3(X1))))))) & (((~\$s2(X0)=X0) | ((((\$s4(X1,X4)=X4 | big_f(\$s4(X1,X4),\$s2(X0)))) & (((~\$s4(X1,X4)=X4) | (~big_f(\$s4(X1,X4),\$s2(X0)))))))))), inference('skolemization',[],[27])).
cnf(32, negated_conjecture, (big_f(X3,\$s2(X0)) | ~X3=\$s3(X1) | \$s2(X0)=X0), inference('cnf transformation',[],[28])).
cnf(47, negated_conjecture, (big_f(\$s3(X1),\$s2(X2)) | \$s2(X2)=X2), inference('equality resolution',[],[32])).
cnf(49, negated_conjecture, (\$s2(X1)=\$s6 | \$s2(X1)=X1), inference('resolution',[],[36,47])).
cnf(52, negated_conjecture, (~\$s6=X1 | \$s2(X1)=X1), inference('equality factoring',[],[49])).
cnf(63, negated_conjecture, (\$s2(\$s6)=\$s6), inference('equality resolution',[],[52])).
cnf(37, plain, (X2=\$s5 | ~big_f(X2,X3)), inference('cnf transformation',[],[31])).
cnf(34, negated_conjecture, (big_f(\$s4(X1,X4),\$s2(X0)) | \$s4(X1,X4)=X4 | ~\$s2(X0)=X0), inference('cnf transformation',[],[28])).
cnf(65, negated_conjecture, (big_f(\$s4(X1,X2),\$s6) | \$s4(X1,X2)=X2), inference('backward superposition, forward demodulation',[],[63,34,63])).
cnf(82, negated_conjecture, (\$s4(X1,X2)=\$s5 | \$s4(X1,X2)=X2), inference('resolution',[],[37,65])).
cnf(142, negated_conjecture, (~\$s5=X1 | \$s4(X2,X1)=X1), inference('equality factoring',[],[82])).
cnf(188, negated_conjecture, (\$s4(X1,\$s5)=\$s5), inference('equality resolution',[],[142])).
cnf(35, negated_conjecture, (~big_f(\$s4(X1,X4),\$s2(X0)) | ~\$s4(X1,X4)=X4 | ~\$s2(X0)=X0), inference('cnf transformation',[],[28])).
cnf(213, negated_conjecture, (~\$s2(X1)=X1 | ~big_f(\$s5,\$s2(X1))), inference('backward superposition, forward demodulation',[],[188,35,188])).
cnf(232, negated_conjecture, \$false, inference('forward superposition, forward demodulation, forward subsumption resolution',[],[48,63,63,213])).
%======= End of refutation =======
=========== Statistics ==========
version: 7.45 8.01 (for CASC-21 only)
=== General:
time: 0s
memory: 0Mb
termination reason: refutation found
=== Generating inferences:
resolution: 81
superposition: 1835
equality_factoring: 88
equality_resolution: 19
=== Simplifying inferences:
propositional_tautology: 6
equational_tautology: 325
forward_subsumption: 1506
forward_subsumption_resolution: 1
forward_demodulation: 10
backward_demodulation: 1
=== Generated clauses:
total: 2038
=== Retained clauses:
total: 194
selected: 85
currently_active: 85
currently_passive: 107
======= End of statistics =======
```

## Vampire 9.0

Andrei Voronkov
University of Manchester, United Kingdom

### Sample solution for SYN075+1

```=========== Refutation ==========
*********** [1, input] ***********
(? X0 X1)(! X2 X3)(big_f(X2,X3) <=> X2=X0 & X3=X1)
*********** [1->77, normalize] ***********
(? X0 X1)(! X2 X3)(big_f(X2,X3) <=> X2=X0 & X3=X1)
-----------------------------
(? X0 X1)(! X2 X3)(big_f(X2,X3) <=> X3=X1 & X2=X0)
*********** [77->84, NNF transformation] ***********
(? X0 X1)(! X2 X3)(big_f(X2,X3) <=> X3=X1 & X2=X0)
-----------------------------
(? X0 X1)(! X2 X3)((~big_f(X2,X3) \/ (X3=X1 & X2=X0)) & ((X3!=X1 \/ X2!=X0) \/ big_f(X2,X3)))
*********** [84->85, flattening] ***********
(? X0 X1)(! X2 X3)((~big_f(X2,X3) \/ (X3=X1 & X2=X0)) & ((X3!=X1 \/ X2!=X0) \/ big_f(X2,X3)))
-----------------------------
(? X0 X1)(! X2 X3)((~big_f(X2,X3) \/ (X3=X1 & X2=X0)) & (X3!=X1 \/ X2!=X0 \/ big_f(X2,X3)))
*********** [85->86, skolemization] ***********
(? X0 X1)(! X2 X3)((~big_f(X2,X3) \/ (X3=X1 & X2=X0)) & (X3!=X1 \/ X2!=X0 \/ big_f(X2,X3)))
-----------------------------
(~big_f(X2,X3) \/ (X3=\$s12 & X2=\$s11)) & (X3!=\$s12 \/ X2!=\$s11 \/ big_f(X2,X3))
*********** [86->93, cnf transformation] ***********
(~big_f(X2,X3) \/ (X3=\$s12 & X2=\$s11)) & (X3!=\$s12 \/ X2!=\$s11 \/ big_f(X2,X3))
-----------------------------
big_f(X2,X3) \/ X2!=\$s11 \/ X3!=\$s12
*********** [93->116, equality resolution, passive clause reanimation] ***********
big_f(X2,X3) \/ X2!=\$s11 \/ X3!=\$s12
-----------------------------
X1!=\$s11 \/ big_f(X1,\$s12)
*********** [116->122, equality resolution, passive clause reanimation] ***********
X1!=\$s11 \/ big_f(X1,\$s12)
-----------------------------
big_f(\$s11,\$s12)
*********** [2, input] ***********
~(? X1)(! X3)((? X0)(! X2)(big_f(X2,X3) <=> X2=X0) <=> X3=X1)
*********** [2->78, rectify] ***********
~(? X1)(! X3)((? X0)(! X2)(big_f(X2,X3) <=> X2=X0) <=> X3=X1)
-----------------------------
~(? X0)(! X1)((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) <=> X1=X0)
*********** [78->79, normalize] ***********
~(? X0)(! X1)((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) <=> X1=X0)
-----------------------------
~(? X0)(! X1)(X1=X0 <=> (? X2)(! X3)(X3=X2 <=> big_f(X3,X1)))
*********** [79->80, ENNF transformation] ***********
~(? X0)(! X1)(X1=X0 <=> (? X2)(! X3)(X3=X2 <=> big_f(X3,X1)))
-----------------------------
(! X0)(? X1)(X1=X0 <~> (? X2)(! X3)(X3=X2 <=> big_f(X3,X1)))
*********** [80->81, NNF transformation] ***********
(! X0)(? X1)(X1=X0 <~> (? X2)(! X3)(X3=X2 <=> big_f(X3,X1)))
-----------------------------
(! X0)(? X1)((X1=X0 \/ (? X2)(! X3)((X3!=X2 \/ big_f(X3,X1)) & (~big_f(X3,X1) \/ X3=X2))) & (X1!=X0 \/ (! X2)(? X3)((X3=X2 \/ big_f(X3,X1)) & (X3!=X2 \/ ~big_f(X3,X1)))))
*********** [81->82, rectify] ***********
(! X0)(? X1)((X1=X0 \/ (? X2)(! X3)((X3!=X2 \/ big_f(X3,X1)) & (~big_f(X3,X1) \/ X3=X2))) & (X1!=X0 \/ (! X2)(? X3)((X3=X2 \/ big_f(X3,X1)) & (X3!=X2 \/ ~big_f(X3,X1)))))
-----------------------------
(! X0)(? X1)((X1=X0 \/ (? X2)(! X3)((X3!=X2 \/ big_f(X3,X1)) & (~big_f(X3,X1) \/ X3=X2))) & (X1!=X0 \/ (! X4)(? X5)((X5=X4 \/ big_f(X5,X1)) & (X5!=X4 \/ ~big_f(X5,X1)))))
*********** [82->83, skolemization] ***********
(! X0)(? X1)((X1=X0 \/ (? X2)(! X3)((X3!=X2 \/ big_f(X3,X1)) & (~big_f(X3,X1) \/ X3=X2))) & (X1!=X0 \/ (! X4)(? X5)((X5=X4 \/ big_f(X5,X1)) & (X5!=X4 \/ ~big_f(X5,X1)))))
-----------------------------
(\$s8(X0)=X0 \/ ((X3!=\$s9(X1) \/ big_f(X3,\$s8(X0))) & (~big_f(X3,\$s8(X0)) \/ X3=\$s9(X1)))) & (\$s8(X0)!=X0 \/ ((\$s10(X1,X4)=X4 \/ big_f(\$s10(X1,X4),\$s8(X0))) & (\$s10(X1,X4)!=X4 \/ ~big_f(\$s10(X1,X4),\$s8(X0)))))
*********** [83->87, cnf transformation] ***********
(\$s8(X0)=X0 \/ ((X3!=\$s9(X1) \/ big_f(X3,\$s8(X0))) & (~big_f(X3,\$s8(X0)) \/ X3=\$s9(X1)))) & (\$s8(X0)!=X0 \/ ((\$s10(X1,X4)=X4 \/ big_f(\$s10(X1,X4),\$s8(X0))) & (\$s10(X1,X4)!=X4 \/ ~big_f(\$s10(X1,X4),\$s8(X0)))))
-----------------------------
big_f(X3,\$s8(X0)) \/ X3!=\$s9(X1) \/ \$s8(X0)=X0
*********** [87->118, equality resolution, passive clause reanimation] ***********
big_f(X3,\$s8(X0)) \/ X3!=\$s9(X1) \/ \$s8(X0)=X0
-----------------------------
big_f(\$s9(X1),\$s8(X2)) \/ \$s8(X2)=X2
*********** [86->91, cnf transformation] ***********
(~big_f(X2,X3) \/ (X3=\$s12 & X2=\$s11)) & (X3!=\$s12 \/ X2!=\$s11 \/ big_f(X2,X3))
-----------------------------
X3=\$s12 \/ ~big_f(X2,X3)
*********** [118,91->123, resolution, passive clause reanimation] ***********
big_f(\$s9(X1),\$s8(X2)) \/ \$s8(X2)=X2
X3=\$s12 \/ ~big_f(X2,X3)
-----------------------------
\$s8(X1)=\$s12 \/ \$s8(X1)=X1
*********** [123->131, equality factoring, passive clause reanimation] ***********
\$s8(X1)=\$s12 \/ \$s8(X1)=X1
-----------------------------
\$s12!=X1 \/ \$s8(X1)=X1
*********** [131->146, equality resolution, passive clause reanimation] ***********
\$s12!=X1 \/ \$s8(X1)=X1
-----------------------------
\$s8(\$s12)=\$s12
*********** [83->89, cnf transformation] ***********
(\$s8(X0)=X0 \/ ((X3!=\$s9(X1) \/ big_f(X3,\$s8(X0))) & (~big_f(X3,\$s8(X0)) \/ X3=\$s9(X1)))) & (\$s8(X0)!=X0 \/ ((\$s10(X1,X4)=X4 \/ big_f(\$s10(X1,X4),\$s8(X0))) & (\$s10(X1,X4)!=X4 \/ ~big_f(\$s10(X1,X4),\$s8(X0)))))
-----------------------------
big_f(\$s10(X1,X4),\$s8(X0)) \/ \$s10(X1,X4)=X4 \/ \$s8(X0)!=X0
*********** [146,89,146->202, backward superposition, forward demodulation, passive clause reanimation] ***********
\$s8(\$s12)=\$s12
big_f(\$s10(X1,X4),\$s8(X0)) \/ \$s10(X1,X4)=X4 \/ \$s8(X0)!=X0
\$s8(\$s12)=\$s12
-----------------------------
big_f(\$s10(X1,X2),\$s12) \/ \$s10(X1,X2)=X2
*********** [86->92, cnf transformation] ***********
(~big_f(X2,X3) \/ (X3=\$s12 & X2=\$s11)) & (X3!=\$s12 \/ X2!=\$s11 \/ big_f(X2,X3))
-----------------------------
X2=\$s11 \/ ~big_f(X2,X3)
*********** [202,92->213, resolution, passive clause reanimation] ***********
big_f(\$s10(X1,X2),\$s12) \/ \$s10(X1,X2)=X2
X2=\$s11 \/ ~big_f(X2,X3)
-----------------------------
\$s10(X1,X2)=\$s11 \/ \$s10(X1,X2)=X2
*********** [213->296, equality factoring, passive clause reanimation] ***********
\$s10(X1,X2)=\$s11 \/ \$s10(X1,X2)=X2
-----------------------------
\$s11!=X1 \/ \$s10(X2,X1)=X1
*********** [296->320, equality resolution, passive clause reanimation] ***********
\$s11!=X1 \/ \$s10(X2,X1)=X1
-----------------------------
\$s10(X1,\$s11)=\$s11
*********** [83->90, cnf transformation] ***********
(\$s8(X0)=X0 \/ ((X3!=\$s9(X1) \/ big_f(X3,\$s8(X0))) & (~big_f(X3,\$s8(X0)) \/ X3=\$s9(X1)))) & (\$s8(X0)!=X0 \/ ((\$s10(X1,X4)=X4 \/ big_f(\$s10(X1,X4),\$s8(X0))) & (\$s10(X1,X4)!=X4 \/ ~big_f(\$s10(X1,X4),\$s8(X0)))))
-----------------------------
~big_f(\$s10(X1,X4),\$s8(X0)) \/ \$s10(X1,X4)!=X4 \/ \$s8(X0)!=X0
*********** [146,90,146->192, backward superposition, forward demodulation, passive clause reanimation] ***********
\$s8(\$s12)=\$s12
~big_f(\$s10(X1,X4),\$s8(X0)) \/ \$s10(X1,X4)!=X4 \/ \$s8(X0)!=X0
\$s8(\$s12)=\$s12
-----------------------------
\$s10(X1,X2)!=X2 \/ ~big_f(\$s10(X1,X2),\$s12)
*********** [122,320,192,320->328, backward superposition, forward demodulation, forward subsumption resolution] ***********
big_f(\$s11,\$s12)
\$s10(X1,\$s11)=\$s11
\$s10(X1,X2)!=X2 \/ ~big_f(\$s10(X1,X2),\$s12)
\$s10(X1,\$s11)=\$s11
-----------------------------
#
======= End of refutation =======
```

## Vampire 10.0

Andrei Voronkov
The University of Manchester, United Kingdom

### Sample solution for SYN075+1

```%%%%% Refutation found! Thanks to Tanya!
%%%%% SZS status Theorem %%%%%
% SZS output start Refutation
fof(1,axiom,
?[X0,X1] : ![X2,X3] : (big_f(X2,X3) <=> equal(X2,X0) & equal(X3,X1)),
inference('input',[])).
fof(3,plain,
?[X0,X1] : ![X2,X3] : (big_f(X2,X3) <=> equal(X3,X1) & equal(X2,X0)),
inference('normalize',[1])).
fof(10,plain,
?[X0,X1] : ![X2,X3] : ((~big_f(X2,X3) | (equal(X3,X1) & equal(X2,X0))) & ((~equal(X3,X1) | ~equal(X2,X0)) | big_f(X2,X3))),
inference('NNF transformation',[3])).
fof(11,plain,
?[X0,X1] : ![X2,X3] : ((~big_f(X2,X3) | (equal(X3,X1) & equal(X2,X0))) & (~equal(X3,X1) | ~equal(X2,X0) | big_f(X2,X3))),
inference('flattening',[10])).
fof(12,plain,
(~big_f(X2,X3) | (equal(X3,sk_4) & equal(X2,sk_3))) & (~equal(X3,sk_4) | ~equal(X2,sk_3) | big_f(X2,X3)),
inference('skolemization',[11])).
cnf(19,plain,
big_f(X2,X3)
| (X2!=sk_3)
| (X3!=sk_4),
inference('cnf transformation',[12])).
cnf(31,plain,
(X1!=sk_4)
| big_f(sk_3,X1),
inference('equality resolution',[19])).
cnf(33,plain,
big_f(sk_3,sk_4),
inference('equality resolution',[31])).
cnf(18,plain,
(X2=sk_3)
| ~big_f(X2,X3),
inference('cnf transformation',[12])).
cnf(17,plain,
(X3=sk_4)
| ~big_f(X2,X3),
inference('cnf transformation',[12])).
fof(2,negated_conjecture,
~?[X1] : ![X3] : (?[X0] : ![X2] : (big_f(X2,X3) <=> equal(X2,X0)) <=> equal(X3,X1)),
inference('input',[])).
fof(4,plain,
~?[X0] : ![X1] : (?[X2] : ![X3] : (big_f(X3,X1) <=> equal(X3,X2)) <=> equal(X1,X0)),
inference('rectify',[2])).
fof(5,plain,
~?[X0] : ![X1] : (equal(X1,X0) <=> ?[X2] : ![X3] : (equal(X3,X2) <=> big_f(X3,X1))),
inference('normalize',[4])).
fof(6,plain,
![X0] : ?[X1] : (equal(X1,X0) <~> ?[X2] : ![X3] : (equal(X3,X2) <=> big_f(X3,X1))),
inference('ENNF transformation',[5])).
fof(7,plain,
![X0] : ?[X1] : ((equal(X1,X0) | ?[X2] : ![X3] : ((~equal(X3,X2) | big_f(X3,X1)) & (~big_f(X3,X1) | equal(X3,X2)))) & (~equal(X1,X0) | ![X2] : ?[X3] : ((equal(X3,X2) | big_f(X3,X1)) & (~equal(X3,X2) | ~big_f(X3,X1))))),
inference('NNF transformation',[6])).
fof(8,plain,
![X0] : ?[X1] : ((equal(X1,X0) | ?[X2] : ![X3] : ((~equal(X3,X2) | big_f(X3,X1)) & (~big_f(X3,X1) | equal(X3,X2)))) & (~equal(X1,X0) | ![X4] : ?[X5] : ((equal(X5,X4) | big_f(X5,X1)) & (~equal(X5,X4) | ~big_f(X5,X1))))),
inference('rectify',[7])).
fof(9,plain,
(equal(sk_0(X0),X0) | ((~equal(X3,sk_1(X1)) | big_f(X3,sk_0(X0))) & (~big_f(X3,sk_0(X0)) | equal(X3,sk_1(X1))))) & (~equal(sk_0(X0),X0) | ((equal(sk_2(X1,X4),X4) | big_f(sk_2(X1,X4),sk_0(X0))) & (~equal(sk_2(X1,X4),X4) | ~big_f(sk_2(X1,X4),sk_0(X0))))),
inference('skolemization',[8])).
cnf(13,plain,
big_f(X3,sk_0(X0))
| (X3!=sk_1(X1))
| (sk_0(X0)=X0),
inference('cnf transformation',[9])).
cnf(32,plain,
big_f(sk_1(X1),sk_0(X2))
| (sk_0(X2)=X2),
inference('equality resolution',[13])).
cnf(34,plain,
(sk_0(X1)=sk_4)
| (sk_0(X1)=X1),
inference('resolution',[17,32])).
cnf(37,plain,
(sk_4!=X1)
| (sk_0(X1)=X1),
inference('equality factoring',[34])).
cnf(43,plain,
(sk_0(sk_4)=sk_4),
inference('equality resolution',[37])).
cnf(15,plain,
big_f(sk_2(X1,X4),sk_0(X0))
| (sk_2(X1,X4)=X4)
| (sk_0(X0)!=X0),
inference('cnf transformation',[9])).
cnf(52,plain,
big_f(sk_2(X1,X2),sk_4)
| (sk_2(X1,X2)=X2),
inference('backward superposition, forward demodulation',[43,15,43])).
cnf(66,plain,
(sk_2(X1,X2)=sk_3)
| (sk_2(X1,X2)=X2),
inference('resolution',[18,52])).
cnf(121,plain,
(sk_3!=X1)
| (sk_2(X2,X1)=X1),
inference('equality factoring',[66])).
cnf(136,plain,
(sk_2(X1,sk_3)=sk_3),
inference('equality resolution',[121])).
cnf(16,plain,
~big_f(sk_2(X1,X4),sk_0(X0))
| (sk_2(X1,X4)!=X4)
| (sk_0(X0)!=X0),
inference('cnf transformation',[9])).
cnf(53,plain,
(sk_2(X1,X2)!=X2)
| ~big_f(sk_2(X1,X2),sk_4),
inference('backward superposition, forward demodulation',[43,16,43])).
cnf(175,plain,
\$false,
inference('backward superposition, forward demodulation, forward subsumption resolution',[33,136,53,136])).
% SZS output end Refutation
```

## Zenon 0.5.0

Damien Doligez
INRIA, France For the sample solutions, unfortunately Zenon cannot solve SYN075+1, so here's the closely-related SYN036+1 instead.

### Sample solution for SYN036+1

This is the script-style output.
```(* PROOF-FOUND *)
(* BEGIN-CONTEXT *)
Require Import zenon.
Parameter zenon_U : Set.
Parameter zenon_E : zenon_U.
Parameter big_q : zenon_U -> Prop.
Parameter big_p : zenon_U -> Prop.
(* END-CONTEXT *)
(* BEGIN-PROOF *)
Lemma zenon_L1_pel34 : forall (zenon_T1 : zenon_U), (~(exists X1 : zenon_U, (forall Y1 : zenon_U, ((big_q X1)<->(big_q Y1))))) -> (~(big_q zenon_T1)) -> (~(exists U : zenon_U, (big_q U))) -> False.
do 1 intro. intros  zenon_Hd zenon_He zenon_Hf.
apply zenon_Hd. exists zenon_T1. apply NNPP. zenon_intro zenon_H10.
apply zenon_H10. zenon_intro zenon_T0. apply NNPP. zenon_intro zenon_H11.
apply (zenon_notequiv_s _ _ zenon_H11); [ zenon_intro zenon_He; zenon_intro zenon_H14 | zenon_intro zenon_H13; zenon_intro zenon_H12 ].
apply zenon_Hf. exists zenon_T0. apply NNPP. zenon_intro zenon_H12.
exact (zenon_H12 zenon_H14).
exact (zenon_He zenon_H13).
Qed.
Lemma zenon_L2_pel34 : (exists U1 : zenon_U, (big_p U1)) -> (forall W1 : zenon_U, (big_p W1)) -> (~(exists X : zenon_U, (forall Y : zenon_U, ((big_p X)<->(big_p Y))))) -> False.
do 0 intro. intros  zenon_H15 zenon_H16 zenon_H17.
elim zenon_H15. zenon_intro zenon_T4. zenon_intro zenon_H18.
apply zenon_H17. exists zenon_T4. apply NNPP. zenon_intro zenon_H19.
apply zenon_H19. zenon_intro zenon_T5. apply NNPP. zenon_intro zenon_H1a.
apply (zenon_notequiv_s _ _ zenon_H1a); [ zenon_intro zenon_H1d; zenon_intro zenon_H1c | zenon_intro zenon_H18; zenon_intro zenon_H1b ].
exact (zenon_H1d zenon_H18).
generalize (zenon_H16 zenon_T5). zenon_intro zenon_H1c.
exact (zenon_H1b zenon_H1c).
Qed.
Lemma zenon_L3_pel34 : ((exists U1 : zenon_U, (big_p U1))<->(forall W1 : zenon_U, (big_p W1))) -> (~(exists X : zenon_U, (forall Y : zenon_U, ((big_p X)<->(big_p Y))))) -> False.
do 0 intro. intros  zenon_H1e zenon_H17.
apply (zenon_equiv_s _ _ zenon_H1e); [ zenon_intro zenon_H20; zenon_intro zenon_H1f | zenon_intro zenon_H15; zenon_intro zenon_H16 ].
apply zenon_H1f. zenon_intro zenon_T3. apply NNPP. zenon_intro zenon_H21.
apply zenon_H17. exists zenon_T3. apply NNPP. zenon_intro zenon_H22.
apply zenon_H22. zenon_intro zenon_T2. apply NNPP. zenon_intro zenon_H23.
apply (zenon_notequiv_s _ _ zenon_H23); [ zenon_intro zenon_H21; zenon_intro zenon_H26 | zenon_intro zenon_H25; zenon_intro zenon_H24 ].
apply zenon_H20. exists zenon_T2. apply NNPP. zenon_intro zenon_H24.
exact (zenon_H24 zenon_H26).
exact (zenon_H21 zenon_H25).
apply (zenon_L2_pel34); trivial.
Qed.
Lemma zenon_L4_pel34 : forall (zenon_T6 : zenon_U), (~(exists X1 : zenon_U, (forall Y1 : zenon_U, ((big_q X1)<->(big_q Y1))))) -> (forall W : zenon_U, (big_q W)) -> (big_q zenon_T6) -> False.
do 1 intro. intros  zenon_Hd zenon_H27 zenon_H28.
apply zenon_Hd. exists zenon_T6. apply NNPP. zenon_intro zenon_H29.
apply zenon_H29. zenon_intro zenon_T7. apply NNPP. zenon_intro zenon_H2a.
apply (zenon_notequiv_s _ _ zenon_H2a); [ zenon_intro zenon_H2d; zenon_intro zenon_H2c | zenon_intro zenon_H28; zenon_intro zenon_H2b ].
exact (zenon_H2d zenon_H28).
generalize (zenon_H27 zenon_T7). zenon_intro zenon_H2c.
exact (zenon_H2b zenon_H2c).
Qed.
Lemma zenon_L5_pel34 : forall (zenon_T8 : zenon_U), (~((exists U1 : zenon_U, (big_p U1))<->(forall W1 : zenon_U, (big_p W1)))) -> (forall Y : zenon_U, ((big_p zenon_T8)<->(big_p Y))) -> (~(big_p zenon_T8)) -> False.
do 1 intro. intros  zenon_H2e zenon_H2f zenon_H30.
apply (zenon_notequiv_s _ _ zenon_H2e); [ zenon_intro zenon_H20; zenon_intro zenon_H16 | zenon_intro zenon_H15; zenon_intro zenon_H1f ].
generalize (zenon_H16 zenon_T8). zenon_intro zenon_H31.
exact (zenon_H30 zenon_H31).
elim zenon_H15. zenon_intro zenon_T4. zenon_intro zenon_H18.
generalize (zenon_H2f zenon_T4). zenon_intro zenon_H32.
apply (zenon_equiv_s _ _ zenon_H32); [ zenon_intro zenon_H30; zenon_intro zenon_H1d | zenon_intro zenon_H31; zenon_intro zenon_H18 ].
exact (zenon_H1d zenon_H18).
exact (zenon_H30 zenon_H31).
Qed.
Lemma zenon_L6_pel34 : (exists X1 : zenon_U, (forall Y1 : zenon_U, ((big_q X1)<->(big_q Y1)))) -> (~(exists U : zenon_U, (big_q U))) -> (forall W : zenon_U, (big_q W)) -> False.
do 0 intro. intros  zenon_H33 zenon_Hf zenon_H27.
elim zenon_H33. zenon_intro zenon_T9. zenon_intro zenon_H34.
generalize (zenon_H34 zenon_E). zenon_intro zenon_H35.
apply (zenon_equiv_s _ _ zenon_H35); [ zenon_intro zenon_H39; zenon_intro zenon_H38 | zenon_intro zenon_H37; zenon_intro zenon_H36 ].
generalize (zenon_H27 zenon_T9). zenon_intro zenon_H37.
exact (zenon_H39 zenon_H37).
apply zenon_Hf. exists zenon_T9. apply NNPP. zenon_intro zenon_H39.
exact (zenon_H39 zenon_H37).
Qed.
Lemma zenon_L7_pel34 : forall (zenon_T6 : zenon_U) (zenon_T1 : zenon_U), (exists X1 : zenon_U, (forall Y1 : zenon_U, ((big_q X1)<->(big_q Y1)))) -> (~(big_q zenon_T1)) -> (big_q zenon_T6) -> False.
do 2 intro. intros  zenon_H33 zenon_He zenon_H28.
elim zenon_H33. zenon_intro zenon_T9. zenon_intro zenon_H34.
generalize (zenon_H34 zenon_E). zenon_intro zenon_H35.
apply (zenon_equiv_s _ _ zenon_H35); [ zenon_intro zenon_H39; zenon_intro zenon_H38 | zenon_intro zenon_H37; zenon_intro zenon_H36 ].
generalize (zenon_H34 zenon_T6). zenon_intro zenon_H3a.
apply (zenon_equiv_s _ _ zenon_H3a); [ zenon_intro zenon_H39; zenon_intro zenon_H2d | zenon_intro zenon_H37; zenon_intro zenon_H28 ].
exact (zenon_H2d zenon_H28).
exact (zenon_H39 zenon_H37).
generalize (zenon_H34 zenon_T1). zenon_intro zenon_H3b.
apply (zenon_equiv_s _ _ zenon_H3b); [ zenon_intro zenon_H39; zenon_intro zenon_He | zenon_intro zenon_H37; zenon_intro zenon_H13 ].
exact (zenon_H39 zenon_H37).
exact (zenon_He zenon_H13).
Qed.
Lemma zenon_L8_pel34 : forall (zenon_T8 : zenon_U), (~((exists U1 : zenon_U, (big_p U1))<->(forall W1 : zenon_U, (big_p W1)))) -> (forall Y : zenon_U, ((big_p zenon_T8)<->(big_p Y))) -> (big_p zenon_T8) -> False.
do 1 intro. intros  zenon_H2e zenon_H2f zenon_H31.
apply (zenon_notequiv_s _ _ zenon_H2e); [ zenon_intro zenon_H20; zenon_intro zenon_H16 | zenon_intro zenon_H15; zenon_intro zenon_H1f ].
apply zenon_H20. exists zenon_T8. apply NNPP. zenon_intro zenon_H30.
exact (zenon_H30 zenon_H31).
apply zenon_H1f. zenon_intro zenon_T3. apply NNPP. zenon_intro zenon_H21.
generalize (zenon_H2f zenon_T3). zenon_intro zenon_H3c.
apply (zenon_equiv_s _ _ zenon_H3c); [ zenon_intro zenon_H30; zenon_intro zenon_H21 | zenon_intro zenon_H31; zenon_intro zenon_H25 ].
exact (zenon_H30 zenon_H31).
exact (zenon_H21 zenon_H25).
Qed.
Lemma zenon_L9_pel34 : (exists U : zenon_U, (big_q U)) -> (~((exists X1 : zenon_U, (forall Y1 : zenon_U, ((big_q X1)<->(big_q Y1))))<->((exists U1 : zenon_U, (big_p U1))<->(forall W1 : zenon_U, (big_p W1))))) -> (~(exists X : zenon_U, (forall Y : zenon_U, ((big_p X)<->(big_p Y))))) -> (~(forall W : zenon_U, (big_q W))) -> False.
do 0 intro. intros  zenon_H3d zenon_H3e zenon_H17 zenon_H3f.
elim zenon_H3d. zenon_intro zenon_T6. zenon_intro zenon_H28.
apply zenon_H3f. zenon_intro zenon_T1. apply NNPP. zenon_intro zenon_He.
apply (zenon_notequiv_s _ _ zenon_H3e); [ zenon_intro zenon_Hd; zenon_intro zenon_H1e | zenon_intro zenon_H33; zenon_intro zenon_H2e ].
apply (zenon_L3_pel34); trivial.
apply (zenon_L7_pel34 zenon_T6 zenon_T1); trivial.
Qed.
Theorem pel34 : (((exists X : zenon_U, (forall Y : zenon_U, ((big_p X)<->(big_p Y))))<->((exists U : zenon_U, (big_q U))<->(forall W : zenon_U, (big_q W))))<->((exists X1 : zenon_U, (forall Y1 : zenon_U, ((big_q X1)<->(big_q Y1))))<->((exists U1 : zenon_U, (big_p U1))<->(forall W1 : zenon_U, (big_p W1))))).
apply NNPP. intro zenon_G.
apply (zenon_notequiv_s _ _ zenon_G); [ zenon_intro zenon_H42; zenon_intro zenon_H41 | zenon_intro zenon_H40; zenon_intro zenon_H3e ].
apply (zenon_notequiv_s _ _ zenon_H42); [ zenon_intro zenon_H17; zenon_intro zenon_H45 | zenon_intro zenon_H44; zenon_intro zenon_H43 ].
apply (zenon_equiv_s _ _ zenon_H45); [ zenon_intro zenon_Hf; zenon_intro zenon_H3f | zenon_intro zenon_H3d; zenon_intro zenon_H27 ].
apply zenon_H3f. zenon_intro zenon_T1. apply NNPP. zenon_intro zenon_He.
apply (zenon_equiv_s _ _ zenon_H41); [ zenon_intro zenon_Hd; zenon_intro zenon_H2e | zenon_intro zenon_H33; zenon_intro zenon_H1e ].
apply (zenon_L1_pel34 zenon_T1); trivial.
apply (zenon_L3_pel34); trivial.
elim zenon_H3d. zenon_intro zenon_T6. zenon_intro zenon_H28.
apply (zenon_equiv_s _ _ zenon_H41); [ zenon_intro zenon_Hd; zenon_intro zenon_H2e | zenon_intro zenon_H33; zenon_intro zenon_H1e ].
apply (zenon_L4_pel34 zenon_T6); trivial.
apply (zenon_L3_pel34); trivial.
elim zenon_H44. zenon_intro zenon_T8. zenon_intro zenon_H2f.
generalize (zenon_H2f zenon_E). zenon_intro zenon_H46.
apply (zenon_equiv_s _ _ zenon_H46); [ zenon_intro zenon_H30; zenon_intro zenon_H48 | zenon_intro zenon_H31; zenon_intro zenon_H47 ].
apply (zenon_notequiv_s _ _ zenon_H43); [ zenon_intro zenon_Hf; zenon_intro zenon_H27 | zenon_intro zenon_H3d; zenon_intro zenon_H3f ].
apply (zenon_equiv_s _ _ zenon_H41); [ zenon_intro zenon_Hd; zenon_intro zenon_H2e | zenon_intro zenon_H33; zenon_intro zenon_H1e ].
apply (zenon_L5_pel34 zenon_T8); trivial.
apply (zenon_L6_pel34); trivial.
elim zenon_H3d. zenon_intro zenon_T6. zenon_intro zenon_H28.
apply zenon_H3f. zenon_intro zenon_T1. apply NNPP. zenon_intro zenon_He.
apply (zenon_equiv_s _ _ zenon_H41); [ zenon_intro zenon_Hd; zenon_intro zenon_H2e | zenon_intro zenon_H33; zenon_intro zenon_H1e ].
apply (zenon_L5_pel34 zenon_T8); trivial.
apply (zenon_L7_pel34 zenon_T6 zenon_T1); trivial.
apply (zenon_notequiv_s _ _ zenon_H43); [ zenon_intro zenon_Hf; zenon_intro zenon_H27 | zenon_intro zenon_H3d; zenon_intro zenon_H3f ].
apply (zenon_equiv_s _ _ zenon_H41); [ zenon_intro zenon_Hd; zenon_intro zenon_H2e | zenon_intro zenon_H33; zenon_intro zenon_H1e ].
apply (zenon_L8_pel34 zenon_T8); trivial.
apply (zenon_L6_pel34); trivial.
elim zenon_H3d. zenon_intro zenon_T6. zenon_intro zenon_H28.
apply zenon_H3f. zenon_intro zenon_T1. apply NNPP. zenon_intro zenon_He.
apply (zenon_equiv_s _ _ zenon_H41); [ zenon_intro zenon_Hd; zenon_intro zenon_H2e | zenon_intro zenon_H33; zenon_intro zenon_H1e ].
apply (zenon_L8_pel34 zenon_T8); trivial.
apply (zenon_L7_pel34 zenon_T6 zenon_T1); trivial.
apply (zenon_equiv_s _ _ zenon_H40); [ zenon_intro zenon_H17; zenon_intro zenon_H43 | zenon_intro zenon_H44; zenon_intro zenon_H45 ].
apply (zenon_notequiv_s _ _ zenon_H43); [ zenon_intro zenon_Hf; zenon_intro zenon_H27 | zenon_intro zenon_H3d; zenon_intro zenon_H3f ].
apply (zenon_notequiv_s _ _ zenon_H3e); [ zenon_intro zenon_Hd; zenon_intro zenon_H1e | zenon_intro zenon_H33; zenon_intro zenon_H2e ].
apply (zenon_L3_pel34); trivial.
apply (zenon_L6_pel34); trivial.
apply (zenon_L9_pel34); trivial.
elim zenon_H44. zenon_intro zenon_T8. zenon_intro zenon_H2f.
generalize (zenon_H2f zenon_E). zenon_intro zenon_H46.
apply (zenon_equiv_s _ _ zenon_H46); [ zenon_intro zenon_H30; zenon_intro zenon_H48 | zenon_intro zenon_H31; zenon_intro zenon_H47 ].
apply (zenon_equiv_s _ _ zenon_H45); [ zenon_intro zenon_Hf; zenon_intro zenon_H3f | zenon_intro zenon_H3d; zenon_intro zenon_H27 ].
apply zenon_H3f. zenon_intro zenon_T1. apply NNPP. zenon_intro zenon_He.
apply (zenon_notequiv_s _ _ zenon_H3e); [ zenon_intro zenon_Hd; zenon_intro zenon_H1e | zenon_intro zenon_H33; zenon_intro zenon_H2e ].
apply (zenon_L1_pel34 zenon_T1); trivial.
apply (zenon_L5_pel34 zenon_T8); trivial.
elim zenon_H3d. zenon_intro zenon_T6. zenon_intro zenon_H28.
apply (zenon_notequiv_s _ _ zenon_H3e); [ zenon_intro zenon_Hd; zenon_intro zenon_H1e | zenon_intro zenon_H33; zenon_intro zenon_H2e ].
apply (zenon_L4_pel34 zenon_T6); trivial.
apply (zenon_L5_pel34 zenon_T8); trivial.
apply (zenon_equiv_s _ _ zenon_H45); [ zenon_intro zenon_Hf; zenon_intro zenon_H3f | zenon_intro zenon_H3d; zenon_intro zenon_H27 ].
apply zenon_H3f. zenon_intro zenon_T1. apply NNPP. zenon_intro zenon_He.
apply (zenon_notequiv_s _ _ zenon_H3e); [ zenon_intro zenon_Hd; zenon_intro zenon_H1e | zenon_intro zenon_H33; zenon_intro zenon_H2e ].
apply (zenon_L1_pel34 zenon_T1); trivial.
apply (zenon_L8_pel34 zenon_T8); trivial.
elim zenon_H3d. zenon_intro zenon_T6. zenon_intro zenon_H28.
apply (zenon_notequiv_s _ _ zenon_H3e); [ zenon_intro zenon_Hd; zenon_intro zenon_H1e | zenon_intro zenon_H33; zenon_intro zenon_H2e ].
apply (zenon_L4_pel34 zenon_T6); trivial.
apply (zenon_L8_pel34 zenon_T8); trivial.
Qed.
(* END-PROOF *)
```

### Sample solution for SYN036+1

This form of Zenon's output is not intended for human consuption, but should be fed to Coq instead, for automatic checking.
```(* PROOF-FOUND *)
(* BEGIN-CONTEXT *)
Require Import zenon.
Parameter zenon'U : Set.
Parameter zenon'E : zenon'U.
Parameter big_q : zenon'U -> Prop.
Parameter big_p : zenon'U -> Prop.
(* END-CONTEXT *)
(* BEGIN-PROOF *)
Let zenon'L1_theorem:(forall zenon'T1:zenon'U,((~(exists X1:zenon'U,(
forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))))->((~(big_q zenon'T1))->((
~(exists U:zenon'U,(big_q U)))->(False))))).
Proof (fun(zenon'T1:zenon'U)(zenon'Hd:(~(exists X1:zenon'U,(forall Y1
:zenon'U,((big_q X1)<->(big_q Y1))))))(zenon'He:(~(big_q zenon'T1)))(
zenon'Hf:(~(exists U:zenon'U,(big_q U))))=>(zenon_notex zenon'U (fun X1
:zenon'U=>(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))) zenon'T1 (fun
zenon'H14:(~(forall Y1:zenon'U,((big_q zenon'T1)<->(big_q Y1))))=>(
zenon_notall zenon'U (fun Y1:zenon'U=>((big_q zenon'T1)<->(big_q Y1))) (
fun(zenon'T0:zenon'U)(zenon'H13:(~((big_q zenon'T1)<->(big_q zenon'T0)))
)=>(zenon_notequiv (big_q zenon'T1) (big_q zenon'T0) (fun(zenon'He:(~(
big_q zenon'T1)))(zenon'H11:(big_q zenon'T0))=>(zenon_notex zenon'U (
fun U:zenon'U=>(big_q U)) zenon'T0 (fun zenon'H12:(~(big_q zenon'T0))=>(
zenon'H12 zenon'H11)) zenon'Hf)) (fun(zenon'H10:(big_q zenon'T1))(
zenon'H12:(~(big_q zenon'T0)))=>(zenon'He zenon'H10)) zenon'H13))
zenon'H14)) zenon'Hd)).
Let zenon'L2_theorem:((exists U1:zenon'U,(big_p U1))->((forall W1
:zenon'U,(big_p W1))->((~(exists X:zenon'U,(forall Y:zenon'U,((big_p X)
<->(big_p Y)))))->(False)))).
Proof (fun(zenon'H15:(exists U1:zenon'U,(big_p U1)))(zenon'H16:(forall
W1:zenon'U,(big_p W1)))(zenon'H17:(~(exists X:zenon'U,(forall Y:zenon'U,
((big_p X)<->(big_p Y))))))=>(zenon_ex zenon'U (fun U1:zenon'U=>(big_p
U1)) (fun(zenon'T4:zenon'U)(zenon'H1a:(big_p zenon'T4))=>(zenon_notex
zenon'U (fun X:zenon'U=>(forall Y:zenon'U,((big_p X)<->(big_p Y))))
zenon'T4 (fun zenon'H1d:(~(forall Y:zenon'U,((big_p zenon'T4)<->(big_p
Y))))=>(zenon_notall zenon'U (fun Y:zenon'U=>((big_p zenon'T4)<->(big_p
Y))) (fun(zenon'T5:zenon'U)(zenon'H1c:(~((big_p zenon'T4)<->(big_p
zenon'T5))))=>(zenon_notequiv (big_p zenon'T4) (big_p zenon'T5) (fun(
zenon'H1b:(~(big_p zenon'T4)))(zenon'H18:(big_p zenon'T5))=>(zenon'H1b
zenon'H1a)) (fun(zenon'H1a:(big_p zenon'T4))(zenon'H19:(~(big_p
zenon'T5)))=>(zenon_all zenon'U (fun W1:zenon'U=>(big_p W1)) zenon'T5 (
fun zenon'H18:(big_p zenon'T5)=>(zenon'H19 zenon'H18)) zenon'H16))
zenon'H1c)) zenon'H1d)) zenon'H17)) zenon'H15)).
Let zenon'L3_theorem:((~(exists X:zenon'U,(forall Y:zenon'U,((big_p X)
<->(big_p Y)))))->(((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,
(big_p W1)))->(False))).
Proof (fun(zenon'H17:(~(exists X:zenon'U,(forall Y:zenon'U,((big_p X)<->
(big_p Y))))))(zenon'H1e:((exists U1:zenon'U,(big_p U1))<->(forall W1
:zenon'U,(big_p W1))))=>(zenon_equiv (exists U1:zenon'U,(big_p U1)) (
forall W1:zenon'U,(big_p W1)) (fun(zenon'H23:(~(exists U1:zenon'U,(
big_p U1))))(zenon'H26:(~(forall W1:zenon'U,(big_p W1))))=>(
zenon_notall zenon'U (fun W1:zenon'U=>(big_p W1)) (fun(zenon'T3:zenon'U)
(zenon'H20:(~(big_p zenon'T3)))=>(zenon_notex zenon'U (fun X:zenon'U=>(
forall Y:zenon'U,((big_p X)<->(big_p Y)))) zenon'T3 (fun zenon'H25:(~(
forall Y:zenon'U,((big_p zenon'T3)<->(big_p Y))))=>(zenon_notall
zenon'U (fun Y:zenon'U=>((big_p zenon'T3)<->(big_p Y))) (fun(zenon'T2
:zenon'U)(zenon'H24:(~((big_p zenon'T3)<->(big_p zenon'T2))))=>(
zenon_notequiv (big_p zenon'T3) (big_p zenon'T2) (fun(zenon'H20:(~(
big_p zenon'T3)))(zenon'H21:(big_p zenon'T2))=>(zenon_notex zenon'U (
fun U1:zenon'U=>(big_p U1)) zenon'T2 (fun zenon'H22:(~(big_p zenon'T2))
=>(zenon'H22 zenon'H21)) zenon'H23)) (fun(zenon'H1f:(big_p zenon'T3))(
zenon'H22:(~(big_p zenon'T2)))=>(zenon'H20 zenon'H1f)) zenon'H24))
zenon'H25)) zenon'H17)) zenon'H26)) (fun(zenon'H15:(exists U1:zenon'U,(
big_p U1)))(zenon'H16:(forall W1:zenon'U,(big_p W1)))=>(
zenon'L2_theorem zenon'H15 zenon'H16 zenon'H17)) zenon'H1e)).
Let zenon'L4_theorem:(forall zenon'T6:zenon'U,((forall W:zenon'U,(big_q
W))->((big_q zenon'T6)->((~(exists X1:zenon'U,(forall Y1:zenon'U,((
big_q X1)<->(big_q Y1)))))->(False))))).
Proof (fun(zenon'T6:zenon'U)(zenon'H27:(forall W:zenon'U,(big_q W)))(
zenon'H28:(big_q zenon'T6))(zenon'Hd:(~(exists X1:zenon'U,(forall Y1
:zenon'U,((big_q X1)<->(big_q Y1))))))=>(zenon_notex zenon'U (fun X1
:zenon'U=>(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))) zenon'T6 (fun
zenon'H2d:(~(forall Y1:zenon'U,((big_q zenon'T6)<->(big_q Y1))))=>(
zenon_notall zenon'U (fun Y1:zenon'U=>((big_q zenon'T6)<->(big_q Y1))) (
fun(zenon'T7:zenon'U)(zenon'H2c:(~((big_q zenon'T6)<->(big_q zenon'T7)))
)=>(zenon_notequiv (big_q zenon'T6) (big_q zenon'T7) (fun(zenon'H2b:(~(
big_q zenon'T6)))(zenon'H29:(big_q zenon'T7))=>(zenon'H2b zenon'H28)) (
fun(zenon'H28:(big_q zenon'T6))(zenon'H2a:(~(big_q zenon'T7)))=>(
zenon_all zenon'U (fun W:zenon'U=>(big_q W)) zenon'T7 (fun zenon'H29:(
big_q zenon'T7)=>(zenon'H2a zenon'H29)) zenon'H27)) zenon'H2c))
zenon'H2d)) zenon'Hd)).
Let zenon'L5_theorem:(forall zenon'T8:zenon'U,((~((exists U1:zenon'U,(
big_p U1))<->(forall W1:zenon'U,(big_p W1))))->((forall Y:zenon'U,((
big_p zenon'T8)<->(big_p Y)))->((~(big_p zenon'T8))->(False))))).
Proof (fun(zenon'T8:zenon'U)(zenon'H2e:(~((exists U1:zenon'U,(big_p U1))
<->(forall W1:zenon'U,(big_p W1)))))(zenon'H2f:(forall Y:zenon'U,((
big_p zenon'T8)<->(big_p Y))))(zenon'H30:(~(big_p zenon'T8)))=>(
zenon_notequiv (exists U1:zenon'U,(big_p U1)) (forall W1:zenon'U,(big_p
W1)) (fun(zenon'H23:(~(exists U1:zenon'U,(big_p U1))))(zenon'H16:(
forall W1:zenon'U,(big_p W1)))=>(zenon_all zenon'U (fun W1:zenon'U=>(
big_p W1)) zenon'T8 (fun zenon'H31:(big_p zenon'T8)=>(zenon'H30
zenon'H31)) zenon'H16)) (fun(zenon'H15:(exists U1:zenon'U,(big_p U1)))(
zenon'H26:(~(forall W1:zenon'U,(big_p W1))))=>(zenon_ex zenon'U (fun U1
:zenon'U=>(big_p U1)) (fun(zenon'T4:zenon'U)(zenon'H1a:(big_p zenon'T4))
=>(zenon_all zenon'U (fun Y:zenon'U=>((big_p zenon'T8)<->(big_p Y)))
zenon'T4 (fun zenon'H32:((big_p zenon'T8)<->(big_p zenon'T4))=>(
zenon_equiv (big_p zenon'T8) (big_p zenon'T4) (fun(zenon'H30:(~(big_p
zenon'T8)))(zenon'H1b:(~(big_p zenon'T4)))=>(zenon'H1b zenon'H1a)) (fun(
zenon'H31:(big_p zenon'T8))(zenon'H1a:(big_p zenon'T4))=>(zenon'H30
zenon'H31)) zenon'H32)) zenon'H2f)) zenon'H15)) zenon'H2e)).
Let zenon'L6_theorem:((forall W:zenon'U,(big_q W))->((exists X1:zenon'U,
(forall Y1:zenon'U,((big_q X1)<->(big_q Y1))))->((~(exists U:zenon'U,(
big_q U)))->(False)))).
Proof (fun(zenon'H27:(forall W:zenon'U,(big_q W)))(zenon'H33:(exists X1
:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))))(zenon'Hf:(~(
exists U:zenon'U,(big_q U))))=>(zenon_ex zenon'U (fun X1:zenon'U=>(
forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))) (fun(zenon'T9:zenon'U)(
zenon'H39:(forall Y1:zenon'U,((big_q zenon'T9)<->(big_q Y1))))=>(
zenon_all zenon'U (fun Y1:zenon'U=>((big_q zenon'T9)<->(big_q Y1)))
zenon'E (fun zenon'H38:((big_q zenon'T9)<->(big_q zenon'E))=>(
zenon_equiv (big_q zenon'T9) (big_q zenon'E) (fun(zenon'H35:(~(big_q
zenon'T9)))(zenon'H36:(~(big_q zenon'E)))=>(zenon_all zenon'U (fun W
:zenon'U=>(big_q W)) zenon'T9 (fun zenon'H34:(big_q zenon'T9)=>(
zenon'H35 zenon'H34)) zenon'H27)) (fun(zenon'H34:(big_q zenon'T9))(
zenon'H37:(big_q zenon'E))=>(zenon_notex zenon'U (fun U:zenon'U=>(big_q
U)) zenon'T9 (fun zenon'H35:(~(big_q zenon'T9))=>(zenon'H35 zenon'H34))
zenon'Hf)) zenon'H38)) zenon'H39)) zenon'H33)).
Let zenon'L7_theorem:(forall zenon'T6:zenon'U,(forall zenon'T1:zenon'U,(
(big_q zenon'T6)->((exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(
big_q Y1))))->((~(big_q zenon'T1))->(False)))))).
Proof (fun(zenon'T6:zenon'U)(zenon'T1:zenon'U)(zenon'H28:(big_q
zenon'T6))(zenon'H33:(exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)
<->(big_q Y1)))))(zenon'He:(~(big_q zenon'T1)))=>(zenon_ex zenon'U (fun
X1:zenon'U=>(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))) (fun(
zenon'T9:zenon'U)(zenon'H39:(forall Y1:zenon'U,((big_q zenon'T9)<->(
big_q Y1))))=>(zenon_all zenon'U (fun Y1:zenon'U=>((big_q zenon'T9)<->(
big_q Y1))) zenon'E (fun zenon'H38:((big_q zenon'T9)<->(big_q zenon'E))
=>(zenon_equiv (big_q zenon'T9) (big_q zenon'E) (fun(zenon'H35:(~(big_q
zenon'T9)))(zenon'H36:(~(big_q zenon'E)))=>(zenon_all zenon'U (fun Y1
:zenon'U=>((big_q zenon'T9)<->(big_q Y1))) zenon'T6 (fun zenon'H3b:((
big_q zenon'T9)<->(big_q zenon'T6))=>(zenon_equiv (big_q zenon'T9) (
big_q zenon'T6) (fun(zenon'H35:(~(big_q zenon'T9)))(zenon'H2b:(~(big_q
zenon'T6)))=>(zenon'H2b zenon'H28)) (fun(zenon'H34:(big_q zenon'T9))(
zenon'H28:(big_q zenon'T6))=>(zenon'H35 zenon'H34)) zenon'H3b))
zenon'H39)) (fun(zenon'H34:(big_q zenon'T9))(zenon'H37:(big_q zenon'E))
=>(zenon_all zenon'U (fun Y1:zenon'U=>((big_q zenon'T9)<->(big_q Y1)))
zenon'T1 (fun zenon'H3a:((big_q zenon'T9)<->(big_q zenon'T1))=>(
zenon_equiv (big_q zenon'T9) (big_q zenon'T1) (fun(zenon'H35:(~(big_q
zenon'T9)))(zenon'He:(~(big_q zenon'T1)))=>(zenon'H35 zenon'H34)) (fun(
zenon'H34:(big_q zenon'T9))(zenon'H10:(big_q zenon'T1))=>(zenon'He
zenon'H10)) zenon'H3a)) zenon'H39)) zenon'H38)) zenon'H39)) zenon'H33)).
Let zenon'L8_theorem:(forall zenon'T8:zenon'U,((~((exists U1:zenon'U,(
big_p U1))<->(forall W1:zenon'U,(big_p W1))))->((forall Y:zenon'U,((
big_p zenon'T8)<->(big_p Y)))->((big_p zenon'T8)->(False))))).
Proof (fun(zenon'T8:zenon'U)(zenon'H2e:(~((exists U1:zenon'U,(big_p U1))
<->(forall W1:zenon'U,(big_p W1)))))(zenon'H2f:(forall Y:zenon'U,((
big_p zenon'T8)<->(big_p Y))))(zenon'H31:(big_p zenon'T8))=>(
zenon_notequiv (exists U1:zenon'U,(big_p U1)) (forall W1:zenon'U,(big_p
W1)) (fun(zenon'H23:(~(exists U1:zenon'U,(big_p U1))))(zenon'H16:(
forall W1:zenon'U,(big_p W1)))=>(zenon_notex zenon'U (fun U1:zenon'U=>(
big_p U1)) zenon'T8 (fun zenon'H30:(~(big_p zenon'T8))=>(zenon'H30
zenon'H31)) zenon'H23)) (fun(zenon'H15:(exists U1:zenon'U,(big_p U1)))(
zenon'H26:(~(forall W1:zenon'U,(big_p W1))))=>(zenon_notall zenon'U (
fun W1:zenon'U=>(big_p W1)) (fun(zenon'T3:zenon'U)(zenon'H20:(~(big_p
zenon'T3)))=>(zenon_all zenon'U (fun Y:zenon'U=>((big_p zenon'T8)<->(
big_p Y))) zenon'T3 (fun zenon'H3c:((big_p zenon'T8)<->(big_p zenon'T3))
=>(zenon_equiv (big_p zenon'T8) (big_p zenon'T3) (fun(zenon'H30:(~(
big_p zenon'T8)))(zenon'H20:(~(big_p zenon'T3)))=>(zenon'H30 zenon'H31))
(fun(zenon'H31:(big_p zenon'T8))(zenon'H1f:(big_p zenon'T3))=>(
zenon'H20 zenon'H1f)) zenon'H3c)) zenon'H2f)) zenon'H26)) zenon'H2e)).
Let zenon'L9_theorem:((~(exists X:zenon'U,(forall Y:zenon'U,((big_p X)
<->(big_p Y)))))->((exists U:zenon'U,(big_q U))->((~((exists X1:zenon'U,
(forall Y1:zenon'U,((big_q X1)<->(big_q Y1))))<->((exists U1:zenon'U,(
big_p U1))<->(forall W1:zenon'U,(big_p W1)))))->((~(forall W:zenon'U,(
big_q W)))->(False))))).
Proof (fun(zenon'H17:(~(exists X:zenon'U,(forall Y:zenon'U,((big_p X)<->
(big_p Y))))))(zenon'H3d:(exists U:zenon'U,(big_q U)))(zenon'H3e:(~((
exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1))))<->((
exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1))))))(
zenon'H3f:(~(forall W:zenon'U,(big_q W))))=>(zenon_ex zenon'U (fun U
:zenon'U=>(big_q U)) (fun(zenon'T6:zenon'U)(zenon'H28:(big_q zenon'T6))
=>(zenon_notall zenon'U (fun W:zenon'U=>(big_q W)) (fun(zenon'T1
:zenon'U)(zenon'He:(~(big_q zenon'T1)))=>(zenon_notequiv (exists X1
:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))) ((exists U1
:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1))) (fun(zenon'Hd:(~(
exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1))))))(
zenon'H1e:((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p
W1))))=>(zenon'L3_theorem zenon'H17 zenon'H1e)) (fun(zenon'H33:(exists
X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))))(zenon'H2e:(~(
(exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1)))))=>(
zenon'L7_theorem zenon'T6 zenon'T1 zenon'H28 zenon'H33 zenon'He))
zenon'H3e)) zenon'H3f)) zenon'H3d)).
Theorem theorem:(((exists X:zenon'U,(forall Y:zenon'U,((big_p X)<->(
big_p Y))))<->((exists U:zenon'U,(big_q U))<->(forall W:zenon'U,(big_q
W))))<->((exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1))
))<->((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1)))))
.
Proof.
exact((NNPP _ (fun zenon'G:(~(((exists X:zenon'U,(forall Y:zenon'U,((big_p X)
<->(big_p Y))))<->((exists U:zenon'U,(big_q U))<->(forall W:zenon'U,(
big_q W))))<->((exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(
big_q Y1))))<->((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(
big_p W1))))))=>(zenon_notequiv ((exists X:zenon'U,(forall Y:zenon'U,((
big_p X)<->(big_p Y))))<->((exists U:zenon'U,(big_q U))<->(forall W
:zenon'U,(big_q W)))) ((exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)
<->(big_q Y1))))<->((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,
(big_p W1)))) (fun(zenon'H48:(~((exists X:zenon'U,(forall Y:zenon'U,((
big_p X)<->(big_p Y))))<->((exists U:zenon'U,(big_q U))<->(forall W
:zenon'U,(big_q W))))))(zenon'H47:((exists X1:zenon'U,(forall Y1
:zenon'U,((big_q X1)<->(big_q Y1))))<->((exists U1:zenon'U,(big_p U1))
<->(forall W1:zenon'U,(big_p W1)))))=>(zenon_notequiv (exists X:zenon'U,
(forall Y:zenon'U,((big_p X)<->(big_p Y)))) ((exists U:zenon'U,(big_q U)
)<->(forall W:zenon'U,(big_q W))) (fun(zenon'H17:(~(exists X:zenon'U,(
forall Y:zenon'U,((big_p X)<->(big_p Y))))))(zenon'H40:((exists U
:zenon'U,(big_q U))<->(forall W:zenon'U,(big_q W))))=>(zenon_equiv (
exists U:zenon'U,(big_q U)) (forall W:zenon'U,(big_q W)) (fun(zenon'Hf:(
~(exists U:zenon'U,(big_q U))))(zenon'H3f:(~(forall W:zenon'U,(big_q W))
))=>(zenon_notall zenon'U (fun W:zenon'U=>(big_q W)) (fun(zenon'T1
:zenon'U)(zenon'He:(~(big_q zenon'T1)))=>(zenon_equiv (exists X1
:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))) ((exists U1
:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1))) (fun(zenon'Hd:(~(
exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1))))))(
zenon'H2e:(~((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p
W1)))))=>(zenon'L1_theorem zenon'T1 zenon'Hd zenon'He zenon'Hf)) (fun(
zenon'H33:(exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)
))))(zenon'H1e:((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(
big_p W1))))=>(zenon'L3_theorem zenon'H17 zenon'H1e)) zenon'H47))
zenon'H3f)) (fun(zenon'H3d:(exists U:zenon'U,(big_q U)))(zenon'H27:(
forall W:zenon'U,(big_q W)))=>(zenon_ex zenon'U (fun U:zenon'U=>(big_q
U)) (fun(zenon'T6:zenon'U)(zenon'H28:(big_q zenon'T6))=>(zenon_equiv (
exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))) ((
exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1))) (fun(
zenon'Hd:(~(exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q
Y1))))))(zenon'H2e:(~((exists U1:zenon'U,(big_p U1))<->(forall W1
:zenon'U,(big_p W1)))))=>(zenon'L4_theorem zenon'T6 zenon'H27 zenon'H28
zenon'Hd)) (fun(zenon'H33:(exists X1:zenon'U,(forall Y1:zenon'U,((big_q
X1)<->(big_q Y1)))))(zenon'H1e:((exists U1:zenon'U,(big_p U1))<->(
forall W1:zenon'U,(big_p W1))))=>(zenon'L3_theorem zenon'H17 zenon'H1e))
zenon'H47)) zenon'H3d)) zenon'H40)) (fun(zenon'H44:(exists X:zenon'U,(
forall Y:zenon'U,((big_p X)<->(big_p Y)))))(zenon'H45:(~((exists U
:zenon'U,(big_q U))<->(forall W:zenon'U,(big_q W)))))=>(zenon_ex
zenon'U (fun X:zenon'U=>(forall Y:zenon'U,((big_p X)<->(big_p Y)))) (
fun(zenon'T8:zenon'U)(zenon'H2f:(forall Y:zenon'U,((big_p zenon'T8)<->(
big_p Y))))=>(zenon_all zenon'U (fun Y:zenon'U=>((big_p zenon'T8)<->(
big_p Y))) zenon'E (fun zenon'H43:((big_p zenon'T8)<->(big_p zenon'E))=>
(zenon_equiv (big_p zenon'T8) (big_p zenon'E) (fun(zenon'H30:(~(big_p
zenon'T8)))(zenon'H41:(~(big_p zenon'E)))=>(zenon_notequiv (exists U
:zenon'U,(big_q U)) (forall W:zenon'U,(big_q W)) (fun(zenon'Hf:(~(
exists U:zenon'U,(big_q U))))(zenon'H27:(forall W:zenon'U,(big_q W)))=>(
zenon_equiv (exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q
Y1)))) ((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1)))
(fun(zenon'Hd:(~(exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(
big_q Y1))))))(zenon'H2e:(~((exists U1:zenon'U,(big_p U1))<->(forall W1
:zenon'U,(big_p W1)))))=>(zenon'L5_theorem zenon'T8 zenon'H2e zenon'H2f
zenon'H30)) (fun(zenon'H33:(exists X1:zenon'U,(forall Y1:zenon'U,((
big_q X1)<->(big_q Y1)))))(zenon'H1e:((exists U1:zenon'U,(big_p U1))<->(
forall W1:zenon'U,(big_p W1))))=>(zenon'L6_theorem zenon'H27 zenon'H33
zenon'Hf)) zenon'H47)) (fun(zenon'H3d:(exists U:zenon'U,(big_q U)))(
zenon'H3f:(~(forall W:zenon'U,(big_q W))))=>(zenon_ex zenon'U (fun U
:zenon'U=>(big_q U)) (fun(zenon'T6:zenon'U)(zenon'H28:(big_q zenon'T6))
=>(zenon_notall zenon'U (fun W:zenon'U=>(big_q W)) (fun(zenon'T1
:zenon'U)(zenon'He:(~(big_q zenon'T1)))=>(zenon_equiv (exists X1
:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))) ((exists U1
:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1))) (fun(zenon'Hd:(~(
exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1))))))(
zenon'H2e:(~((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p
W1)))))=>(zenon'L5_theorem zenon'T8 zenon'H2e zenon'H2f zenon'H30)) (
fun(zenon'H33:(exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(
big_q Y1)))))(zenon'H1e:((exists U1:zenon'U,(big_p U1))<->(forall W1
:zenon'U,(big_p W1))))=>(zenon'L7_theorem zenon'T6 zenon'T1 zenon'H28
zenon'H33 zenon'He)) zenon'H47)) zenon'H3f)) zenon'H3d)) zenon'H45)) (
fun(zenon'H31:(big_p zenon'T8))(zenon'H42:(big_p zenon'E))=>(
zenon_notequiv (exists U:zenon'U,(big_q U)) (forall W:zenon'U,(big_q W))
(fun(zenon'Hf:(~(exists U:zenon'U,(big_q U))))(zenon'H27:(forall W
:zenon'U,(big_q W)))=>(zenon_equiv (exists X1:zenon'U,(forall Y1
:zenon'U,((big_q X1)<->(big_q Y1)))) ((exists U1:zenon'U,(big_p U1))<->(
forall W1:zenon'U,(big_p W1))) (fun(zenon'Hd:(~(exists X1:zenon'U,(
forall Y1:zenon'U,((big_q X1)<->(big_q Y1))))))(zenon'H2e:(~((exists U1
:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1)))))=>(
zenon'L8_theorem zenon'T8 zenon'H2e zenon'H2f zenon'H31)) (fun(
zenon'H33:(exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)
))))(zenon'H1e:((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(
big_p W1))))=>(zenon'L6_theorem zenon'H27 zenon'H33 zenon'Hf))
zenon'H47)) (fun(zenon'H3d:(exists U:zenon'U,(big_q U)))(zenon'H3f:(~(
forall W:zenon'U,(big_q W))))=>(zenon_ex zenon'U (fun U:zenon'U=>(big_q
U)) (fun(zenon'T6:zenon'U)(zenon'H28:(big_q zenon'T6))=>(zenon_notall
zenon'U (fun W:zenon'U=>(big_q W)) (fun(zenon'T1:zenon'U)(zenon'He:(~(
big_q zenon'T1)))=>(zenon_equiv (exists X1:zenon'U,(forall Y1:zenon'U,((
big_q X1)<->(big_q Y1)))) ((exists U1:zenon'U,(big_p U1))<->(forall W1
:zenon'U,(big_p W1))) (fun(zenon'Hd:(~(exists X1:zenon'U,(forall Y1
:zenon'U,((big_q X1)<->(big_q Y1))))))(zenon'H2e:(~((exists U1:zenon'U,(
big_p U1))<->(forall W1:zenon'U,(big_p W1)))))=>(zenon'L8_theorem
zenon'T8 zenon'H2e zenon'H2f zenon'H31)) (fun(zenon'H33:(exists X1
:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))))(zenon'H1e:((
exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1))))=>(
zenon'L7_theorem zenon'T6 zenon'T1 zenon'H28 zenon'H33 zenon'He))
zenon'H47)) zenon'H3f)) zenon'H3d)) zenon'H45)) zenon'H43)) zenon'H2f))
zenon'H44)) zenon'H48)) (fun(zenon'H46:((exists X:zenon'U,(forall Y
:zenon'U,((big_p X)<->(big_p Y))))<->((exists U:zenon'U,(big_q U))<->(
forall W:zenon'U,(big_q W)))))(zenon'H3e:(~((exists X1:zenon'U,(forall
Y1:zenon'U,((big_q X1)<->(big_q Y1))))<->((exists U1:zenon'U,(big_p U1))
<->(forall W1:zenon'U,(big_p W1))))))=>(zenon_equiv (exists X:zenon'U,(
forall Y:zenon'U,((big_p X)<->(big_p Y)))) ((exists U:zenon'U,(big_q U))
<->(forall W:zenon'U,(big_q W))) (fun(zenon'H17:(~(exists X:zenon'U,(
forall Y:zenon'U,((big_p X)<->(big_p Y))))))(zenon'H45:(~((exists U
:zenon'U,(big_q U))<->(forall W:zenon'U,(big_q W)))))=>(zenon_notequiv (
exists U:zenon'U,(big_q U)) (forall W:zenon'U,(big_q W)) (fun(zenon'Hf:(
~(exists U:zenon'U,(big_q U))))(zenon'H27:(forall W:zenon'U,(big_q W)))
=>(zenon_notequiv (exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(
big_q Y1)))) ((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(
big_p W1))) (fun(zenon'Hd:(~(exists X1:zenon'U,(forall Y1:zenon'U,((
big_q X1)<->(big_q Y1))))))(zenon'H1e:((exists U1:zenon'U,(big_p U1))<->
(forall W1:zenon'U,(big_p W1))))=>(zenon'L3_theorem zenon'H17 zenon'H1e)
) (fun(zenon'H33:(exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(
big_q Y1)))))(zenon'H2e:(~((exists U1:zenon'U,(big_p U1))<->(forall W1
:zenon'U,(big_p W1)))))=>(zenon'L6_theorem zenon'H27 zenon'H33 zenon'Hf)
) zenon'H3e)) (fun(zenon'H3d:(exists U:zenon'U,(big_q U)))(zenon'H3f:(~(
forall W:zenon'U,(big_q W))))=>(zenon'L9_theorem zenon'H17 zenon'H3d
zenon'H3e zenon'H3f)) zenon'H45)) (fun(zenon'H44:(exists X:zenon'U,(
forall Y:zenon'U,((big_p X)<->(big_p Y)))))(zenon'H40:((exists U
:zenon'U,(big_q U))<->(forall W:zenon'U,(big_q W))))=>(zenon_ex zenon'U
(fun X:zenon'U=>(forall Y:zenon'U,((big_p X)<->(big_p Y)))) (fun(
zenon'T8:zenon'U)(zenon'H2f:(forall Y:zenon'U,((big_p zenon'T8)<->(
big_p Y))))=>(zenon_all zenon'U (fun Y:zenon'U=>((big_p zenon'T8)<->(
big_p Y))) zenon'E (fun zenon'H43:((big_p zenon'T8)<->(big_p zenon'E))=>
(zenon_equiv (big_p zenon'T8) (big_p zenon'E) (fun(zenon'H30:(~(big_p
zenon'T8)))(zenon'H41:(~(big_p zenon'E)))=>(zenon_equiv (exists U
:zenon'U,(big_q U)) (forall W:zenon'U,(big_q W)) (fun(zenon'Hf:(~(
exists U:zenon'U,(big_q U))))(zenon'H3f:(~(forall W:zenon'U,(big_q W))))
=>(zenon_notall zenon'U (fun W:zenon'U=>(big_q W)) (fun(zenon'T1
:zenon'U)(zenon'He:(~(big_q zenon'T1)))=>(zenon_notequiv (exists X1
:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))) ((exists U1
:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1))) (fun(zenon'Hd:(~(
exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1))))))(
zenon'H1e:((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p
W1))))=>(zenon'L1_theorem zenon'T1 zenon'Hd zenon'He zenon'Hf)) (fun(
zenon'H33:(exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)
))))(zenon'H2e:(~((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(
big_p W1)))))=>(zenon'L5_theorem zenon'T8 zenon'H2e zenon'H2f zenon'H30)
) zenon'H3e)) zenon'H3f)) (fun(zenon'H3d:(exists U:zenon'U,(big_q U)))(
zenon'H27:(forall W:zenon'U,(big_q W)))=>(zenon_ex zenon'U (fun U
:zenon'U=>(big_q U)) (fun(zenon'T6:zenon'U)(zenon'H28:(big_q zenon'T6))
=>(zenon_notequiv (exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(
big_q Y1)))) ((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(
big_p W1))) (fun(zenon'Hd:(~(exists X1:zenon'U,(forall Y1:zenon'U,((
big_q X1)<->(big_q Y1))))))(zenon'H1e:((exists U1:zenon'U,(big_p U1))<->
(forall W1:zenon'U,(big_p W1))))=>(zenon'L4_theorem zenon'T6 zenon'H27
zenon'H28 zenon'Hd)) (fun(zenon'H33:(exists X1:zenon'U,(forall Y1
:zenon'U,((big_q X1)<->(big_q Y1)))))(zenon'H2e:(~((exists U1:zenon'U,(
big_p U1))<->(forall W1:zenon'U,(big_p W1)))))=>(zenon'L5_theorem
zenon'T8 zenon'H2e zenon'H2f zenon'H30)) zenon'H3e)) zenon'H3d))
zenon'H40)) (fun(zenon'H31:(big_p zenon'T8))(zenon'H42:(big_p zenon'E))
=>(zenon_equiv (exists U:zenon'U,(big_q U)) (forall W:zenon'U,(big_q W))
(fun(zenon'Hf:(~(exists U:zenon'U,(big_q U))))(zenon'H3f:(~(forall W
:zenon'U,(big_q W))))=>(zenon_notall zenon'U (fun W:zenon'U=>(big_q W))
(fun(zenon'T1:zenon'U)(zenon'He:(~(big_q zenon'T1)))=>(zenon_notequiv (
exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))) ((
exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1))) (fun(
zenon'Hd:(~(exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q
Y1))))))(zenon'H1e:((exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,
(big_p W1))))=>(zenon'L1_theorem zenon'T1 zenon'Hd zenon'He zenon'Hf)) (
fun(zenon'H33:(exists X1:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(
big_q Y1)))))(zenon'H2e:(~((exists U1:zenon'U,(big_p U1))<->(forall W1
:zenon'U,(big_p W1)))))=>(zenon'L8_theorem zenon'T8 zenon'H2e zenon'H2f
zenon'H31)) zenon'H3e)) zenon'H3f)) (fun(zenon'H3d:(exists U:zenon'U,(
big_q U)))(zenon'H27:(forall W:zenon'U,(big_q W)))=>(zenon_ex zenon'U (
fun U:zenon'U=>(big_q U)) (fun(zenon'T6:zenon'U)(zenon'H28:(big_q
zenon'T6))=>(zenon_notequiv (exists X1:zenon'U,(forall Y1:zenon'U,((
big_q X1)<->(big_q Y1)))) ((exists U1:zenon'U,(big_p U1))<->(forall W1
:zenon'U,(big_p W1))) (fun(zenon'Hd:(~(exists X1:zenon'U,(forall Y1
:zenon'U,((big_q X1)<->(big_q Y1))))))(zenon'H1e:((exists U1:zenon'U,(
big_p U1))<->(forall W1:zenon'U,(big_p W1))))=>(zenon'L4_theorem
zenon'T6 zenon'H27 zenon'H28 zenon'Hd)) (fun(zenon'H33:(exists X1
:zenon'U,(forall Y1:zenon'U,((big_q X1)<->(big_q Y1)))))(zenon'H2e:(~((
exists U1:zenon'U,(big_p U1))<->(forall W1:zenon'U,(big_p W1)))))=>(
zenon'L8_theorem zenon'T8 zenon'H2e zenon'H2f zenon'H31)) zenon'H3e))
zenon'H3d)) zenon'H40)) zenon'H43)) zenon'H2f)) zenon'H44)) zenon'H46))
zenon'G)))).
Qed.
(* END-PROOF *)
```