TSTP Solution File: PUZ035-1 by Z3---4.8.9.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Z3---4.8.9.0
% Problem  : PUZ035-1 : TPTP v8.1.0. Released v2.0.0.
% Transfm  : none
% Format   : tptp
% Command  : z3_tptp -proof -model -t:%d -file:%s

% Computer : n023.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Sun Sep 18 14:11:00 EDT 2022

% Result   : Unsatisfiable 0.14s 0.39s
% Output   : Proof 0.14s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : PUZ035-1 : TPTP v8.1.0. Released v2.0.0.
% 0.12/0.13  % Command  : z3_tptp -proof -model -t:%d -file:%s
% 0.14/0.34  % Computer : n023.cluster.edu
% 0.14/0.34  % Model    : x86_64 x86_64
% 0.14/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.34  % Memory   : 8042.1875MB
% 0.14/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.34  % CPULimit : 300
% 0.14/0.34  % WCLimit  : 300
% 0.14/0.34  % DateTime : Fri Sep  2 18:45:33 EDT 2022
% 0.14/0.34  % CPUTime  : 
% 0.14/0.35  Z3tptp [4.8.9.0] (c) 2006-20**. Microsoft Corp.
% 0.14/0.35  Usage: tptp [options] [-file:]file
% 0.14/0.35    -h, -?       prints this message.
% 0.14/0.35    -smt2        print SMT-LIB2 benchmark.
% 0.14/0.35    -m, -model   generate model.
% 0.14/0.35    -p, -proof   generate proof.
% 0.14/0.35    -c, -core    generate unsat core of named formulas.
% 0.14/0.35    -st, -statistics display statistics.
% 0.14/0.35    -t:timeout   set timeout (in second).
% 0.14/0.35    -smt2status  display status in smt2 format instead of SZS.
% 0.14/0.35    -check_status check the status produced by Z3 against annotation in benchmark.
% 0.14/0.35    -<param>:<value> configuration parameter and value.
% 0.14/0.35    -o:<output-file> file to place output in.
% 0.14/0.39  % SZS status Unsatisfiable
% 0.14/0.39  % SZS output start Proof
% 0.14/0.39  tff(isa_type, type, (
% 0.14/0.39     isa: ( $i * $i ) > $o)).
% 0.14/0.39  tff(knave_type, type, (
% 0.14/0.39     knave: $i)).
% 0.14/0.39  tff(asked_type, type, (
% 0.14/0.39     asked: $i)).
% 0.14/0.39  tff(knight_type, type, (
% 0.14/0.39     knight: $i)).
% 0.14/0.39  tff(response_type, type, (
% 0.14/0.39     response: $i > $o)).
% 0.14/0.39  tff(other_type, type, (
% 0.14/0.39     other: $i)).
% 0.14/0.39  tff(yes_type, type, (
% 0.14/0.39     yes: $i)).
% 0.14/0.39  tff(tell_the_truth_type, type, (
% 0.14/0.39     tell_the_truth: $i > $o)).
% 0.14/0.39  tff(person_type, type, (
% 0.14/0.39     person: $i > $o)).
% 0.14/0.39  tff(no_type, type, (
% 0.14/0.39     no: $i)).
% 0.14/0.39  tff(lies_type, type, (
% 0.14/0.39     lies: $i > $o)).
% 0.14/0.39  tff(1,plain,
% 0.14/0.39      (^[Y: $i, A: $i, X: $i] : refl(((~isa(other, Y)) | (~isa(asked, X)) | (~response(A))) <=> ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A))))),
% 0.14/0.39      inference(bind,[status(th)],[])).
% 0.14/0.39  tff(2,plain,
% 0.14/0.39      (![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A))) <=> ![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))),
% 0.14/0.39      inference(quant_intro,[status(thm)],[1])).
% 0.14/0.39  tff(3,plain,
% 0.14/0.39      (![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A))) <=> ![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))),
% 0.14/0.39      inference(rewrite,[status(thm)],[])).
% 0.14/0.39  tff(4,plain,
% 0.14/0.39      (^[Y: $i, A: $i, X: $i] : rewrite((((~response(A)) | (~isa(asked, X))) | (~isa(other, Y))) <=> ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A))))),
% 0.14/0.39      inference(bind,[status(th)],[])).
% 0.14/0.39  tff(5,plain,
% 0.14/0.39      (![Y: $i, A: $i, X: $i] : (((~response(A)) | (~isa(asked, X))) | (~isa(other, Y))) <=> ![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))),
% 0.14/0.39      inference(quant_intro,[status(thm)],[4])).
% 0.14/0.39  tff(6,axiom,(![Y: $i, A: $i, X: $i] : (((~response(A)) | (~isa(asked, X))) | (~isa(other, Y)))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','prove_answer')).
% 0.14/0.39  tff(7,plain,
% 0.14/0.39      (![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))),
% 0.14/0.39      inference(modus_ponens,[status(thm)],[6, 5])).
% 0.14/0.39  tff(8,plain,
% 0.14/0.39      (![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))),
% 0.14/0.39      inference(modus_ponens,[status(thm)],[7, 3])).
% 0.14/0.39  tff(9,plain,(
% 0.14/0.39      ![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))),
% 0.14/0.39      inference(skolemize,[status(sab)],[8])).
% 0.14/0.39  tff(10,plain,
% 0.14/0.39      (![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))),
% 0.14/0.39      inference(modus_ponens,[status(thm)],[9, 2])).
% 0.14/0.39  tff(11,assumption,(isa(asked, knight)), introduced(assumption)).
% 0.14/0.39  tff(12,plain,
% 0.14/0.39      (^[X: $i] : refl((tell_the_truth(X) | (~isa(X, knight))) <=> (tell_the_truth(X) | (~isa(X, knight))))),
% 0.14/0.39      inference(bind,[status(th)],[])).
% 0.14/0.39  tff(13,plain,
% 0.14/0.39      (![X: $i] : (tell_the_truth(X) | (~isa(X, knight))) <=> ![X: $i] : (tell_the_truth(X) | (~isa(X, knight)))),
% 0.14/0.39      inference(quant_intro,[status(thm)],[12])).
% 0.14/0.39  tff(14,plain,
% 0.14/0.39      (![X: $i] : (tell_the_truth(X) | (~isa(X, knight))) <=> ![X: $i] : (tell_the_truth(X) | (~isa(X, knight)))),
% 0.14/0.39      inference(rewrite,[status(thm)],[])).
% 0.14/0.39  tff(15,plain,
% 0.14/0.39      (^[X: $i] : rewrite(((~isa(X, knight)) | tell_the_truth(X)) <=> (tell_the_truth(X) | (~isa(X, knight))))),
% 0.14/0.39      inference(bind,[status(th)],[])).
% 0.14/0.39  tff(16,plain,
% 0.14/0.39      (![X: $i] : ((~isa(X, knight)) | tell_the_truth(X)) <=> ![X: $i] : (tell_the_truth(X) | (~isa(X, knight)))),
% 0.14/0.39      inference(quant_intro,[status(thm)],[15])).
% 0.14/0.39  tff(17,axiom,(![X: $i] : ((~isa(X, knight)) | tell_the_truth(X))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','knights_make_true_statements')).
% 0.14/0.39  tff(18,plain,
% 0.14/0.39      (![X: $i] : (tell_the_truth(X) | (~isa(X, knight)))),
% 0.14/0.39      inference(modus_ponens,[status(thm)],[17, 16])).
% 0.14/0.39  tff(19,plain,
% 0.14/0.39      (![X: $i] : (tell_the_truth(X) | (~isa(X, knight)))),
% 0.14/0.39      inference(modus_ponens,[status(thm)],[18, 14])).
% 0.14/0.39  tff(20,plain,(
% 0.14/0.39      ![X: $i] : (tell_the_truth(X) | (~isa(X, knight)))),
% 0.14/0.39      inference(skolemize,[status(sab)],[19])).
% 0.14/0.39  tff(21,plain,
% 0.14/0.39      (![X: $i] : (tell_the_truth(X) | (~isa(X, knight)))),
% 0.14/0.39      inference(modus_ponens,[status(thm)],[20, 13])).
% 0.14/0.39  tff(22,plain,
% 0.14/0.39      (((~![X: $i] : (tell_the_truth(X) | (~isa(X, knight)))) | (tell_the_truth(asked) | (~isa(asked, knight)))) <=> ((~![X: $i] : (tell_the_truth(X) | (~isa(X, knight)))) | tell_the_truth(asked) | (~isa(asked, knight)))),
% 0.14/0.40      inference(rewrite,[status(thm)],[])).
% 0.14/0.40  tff(23,plain,
% 0.14/0.40      ((~![X: $i] : (tell_the_truth(X) | (~isa(X, knight)))) | (tell_the_truth(asked) | (~isa(asked, knight)))),
% 0.14/0.40      inference(quant_inst,[status(thm)],[])).
% 0.14/0.40  tff(24,plain,
% 0.14/0.40      ((~![X: $i] : (tell_the_truth(X) | (~isa(X, knight)))) | tell_the_truth(asked) | (~isa(asked, knight))),
% 0.14/0.40      inference(modus_ponens,[status(thm)],[23, 22])).
% 0.14/0.40  tff(25,plain,
% 0.14/0.40      (tell_the_truth(asked)),
% 0.14/0.40      inference(unit_resolution,[status(thm)],[24, 21, 11])).
% 0.14/0.40  tff(26,plain,
% 0.14/0.40      (^[Anyone: $i] : refl(((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked))) <=> ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked))))),
% 0.14/0.40      inference(bind,[status(th)],[])).
% 0.14/0.40  tff(27,plain,
% 0.14/0.40      (![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked))) <=> ![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))),
% 0.14/0.40      inference(quant_intro,[status(thm)],[26])).
% 0.14/0.40  tff(28,plain,
% 0.14/0.40      (![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked))) <=> ![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))),
% 0.14/0.40      inference(rewrite,[status(thm)],[])).
% 0.14/0.40  tff(29,plain,
% 0.14/0.40      (^[Anyone: $i] : rewrite(((response(yes) | (~tell_the_truth(asked))) | (~isa(Anyone, knight))) <=> ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked))))),
% 0.14/0.40      inference(bind,[status(th)],[])).
% 0.14/0.40  tff(30,plain,
% 0.14/0.40      (![Anyone: $i] : ((response(yes) | (~tell_the_truth(asked))) | (~isa(Anyone, knight))) <=> ![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))),
% 0.14/0.40      inference(quant_intro,[status(thm)],[29])).
% 0.14/0.40  tff(31,axiom,(![Anyone: $i] : ((response(yes) | (~tell_the_truth(asked))) | (~isa(Anyone, knight)))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','knight_answers3')).
% 0.14/0.40  tff(32,plain,
% 0.14/0.40      (![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))),
% 0.14/0.40      inference(modus_ponens,[status(thm)],[31, 30])).
% 0.14/0.40  tff(33,plain,
% 0.14/0.40      (![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))),
% 0.14/0.40      inference(modus_ponens,[status(thm)],[32, 28])).
% 0.14/0.40  tff(34,plain,(
% 0.14/0.40      ![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))),
% 0.14/0.40      inference(skolemize,[status(sab)],[33])).
% 0.14/0.40  tff(35,plain,
% 0.14/0.40      (![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))),
% 0.14/0.40      inference(modus_ponens,[status(thm)],[34, 27])).
% 0.14/0.40  tff(36,plain,
% 0.14/0.40      (((~![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))) | (response(yes) | (~tell_the_truth(asked)) | (~isa(asked, knight)))) <=> ((~![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))) | response(yes) | (~tell_the_truth(asked)) | (~isa(asked, knight)))),
% 0.14/0.40      inference(rewrite,[status(thm)],[])).
% 0.14/0.40  tff(37,plain,
% 0.14/0.40      (((~isa(asked, knight)) | response(yes) | (~tell_the_truth(asked))) <=> (response(yes) | (~tell_the_truth(asked)) | (~isa(asked, knight)))),
% 0.14/0.40      inference(rewrite,[status(thm)],[])).
% 0.14/0.40  tff(38,plain,
% 0.14/0.40      (((~![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))) | ((~isa(asked, knight)) | response(yes) | (~tell_the_truth(asked)))) <=> ((~![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))) | (response(yes) | (~tell_the_truth(asked)) | (~isa(asked, knight))))),
% 0.14/0.40      inference(monotonicity,[status(thm)],[37])).
% 0.14/0.40  tff(39,plain,
% 0.14/0.40      (((~![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))) | ((~isa(asked, knight)) | response(yes) | (~tell_the_truth(asked)))) <=> ((~![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))) | response(yes) | (~tell_the_truth(asked)) | (~isa(asked, knight)))),
% 0.14/0.40      inference(transitivity,[status(thm)],[38, 36])).
% 0.14/0.40  tff(40,plain,
% 0.14/0.40      ((~![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))) | ((~isa(asked, knight)) | response(yes) | (~tell_the_truth(asked)))),
% 0.14/0.40      inference(quant_inst,[status(thm)],[])).
% 0.14/0.40  tff(41,plain,
% 0.14/0.40      ((~![Anyone: $i] : ((~isa(Anyone, knight)) | response(yes) | (~tell_the_truth(asked)))) | response(yes) | (~tell_the_truth(asked)) | (~isa(asked, knight))),
% 0.14/0.40      inference(modus_ponens,[status(thm)],[40, 39])).
% 0.14/0.40  tff(42,plain,
% 0.14/0.40      (response(yes) | (~tell_the_truth(asked))),
% 0.14/0.40      inference(unit_resolution,[status(thm)],[41, 11, 35])).
% 0.14/0.40  tff(43,plain,
% 0.14/0.40      (response(yes)),
% 0.14/0.40      inference(unit_resolution,[status(thm)],[42, 25])).
% 0.14/0.40  tff(44,assumption,(isa(other, knave)), introduced(assumption)).
% 0.14/0.40  tff(45,plain,
% 0.14/0.40      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~response(yes)) | (~isa(asked, knight)) | (~isa(other, knave)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(yes)) | (~isa(asked, knight)) | (~isa(other, knave)))),
% 0.14/0.40      inference(rewrite,[status(thm)],[])).
% 0.14/0.40  tff(46,plain,
% 0.14/0.40      (((~isa(other, knave)) | (~isa(asked, knight)) | (~response(yes))) <=> ((~response(yes)) | (~isa(asked, knight)) | (~isa(other, knave)))),
% 0.14/0.40      inference(rewrite,[status(thm)],[])).
% 0.14/0.40  tff(47,plain,
% 0.14/0.40      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knave)) | (~isa(asked, knight)) | (~response(yes)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~response(yes)) | (~isa(asked, knight)) | (~isa(other, knave))))),
% 0.14/0.40      inference(monotonicity,[status(thm)],[46])).
% 0.14/0.40  tff(48,plain,
% 0.14/0.40      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knave)) | (~isa(asked, knight)) | (~response(yes)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(yes)) | (~isa(asked, knight)) | (~isa(other, knave)))),
% 0.14/0.40      inference(transitivity,[status(thm)],[47, 45])).
% 0.14/0.40  tff(49,plain,
% 0.14/0.40      ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knave)) | (~isa(asked, knight)) | (~response(yes)))),
% 0.14/0.40      inference(quant_inst,[status(thm)],[])).
% 0.14/0.40  tff(50,plain,
% 0.14/0.40      ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(yes)) | (~isa(asked, knight)) | (~isa(other, knave))),
% 0.14/0.40      inference(modus_ponens,[status(thm)],[49, 48])).
% 0.14/0.40  tff(51,plain,
% 0.14/0.40      ($false),
% 0.14/0.40      inference(unit_resolution,[status(thm)],[50, 11, 43, 10, 44])).
% 0.14/0.40  tff(52,plain,((~isa(other, knave)) | (~isa(asked, knight))), inference(lemma,lemma(discharge,[]))).
% 0.14/0.40  tff(53,plain,
% 0.14/0.40      (~isa(other, knave)),
% 0.14/0.40      inference(unit_resolution,[status(thm)],[52, 11])).
% 0.14/0.40  tff(54,plain,
% 0.14/0.40      (person(other) <=> person(other)),
% 0.14/0.40      inference(rewrite,[status(thm)],[])).
% 0.14/0.40  tff(55,axiom,(person(other)), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','other_person')).
% 0.14/0.40  tff(56,plain,
% 0.14/0.40      (person(other)),
% 0.14/0.40      inference(modus_ponens,[status(thm)],[55, 54])).
% 0.14/0.40  tff(57,plain,
% 0.14/0.40      (^[X: $i] : refl((isa(X, knave) | isa(X, knight) | (~person(X))) <=> (isa(X, knave) | isa(X, knight) | (~person(X))))),
% 0.14/0.40      inference(bind,[status(th)],[])).
% 0.14/0.40  tff(58,plain,
% 0.14/0.40      (![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X))) <=> ![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))),
% 0.14/0.40      inference(quant_intro,[status(thm)],[57])).
% 0.14/0.40  tff(59,plain,
% 0.14/0.40      (![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X))) <=> ![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))),
% 0.14/0.40      inference(rewrite,[status(thm)],[])).
% 0.14/0.40  tff(60,plain,
% 0.14/0.40      (^[X: $i] : rewrite((((~person(X)) | isa(X, knight)) | isa(X, knave)) <=> (isa(X, knave) | isa(X, knight) | (~person(X))))),
% 0.14/0.40      inference(bind,[status(th)],[])).
% 0.14/0.40  tff(61,plain,
% 0.14/0.40      (![X: $i] : (((~person(X)) | isa(X, knight)) | isa(X, knave)) <=> ![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))),
% 0.14/0.40      inference(quant_intro,[status(thm)],[60])).
% 0.14/0.40  tff(62,axiom,(![X: $i] : (((~person(X)) | isa(X, knight)) | isa(X, knave))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','everyone_a_knight_or_knave')).
% 0.14/0.40  tff(63,plain,
% 0.14/0.40      (![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))),
% 0.14/0.40      inference(modus_ponens,[status(thm)],[62, 61])).
% 0.14/0.40  tff(64,plain,
% 0.14/0.40      (![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))),
% 0.14/0.40      inference(modus_ponens,[status(thm)],[63, 59])).
% 0.14/0.40  tff(65,plain,(
% 0.14/0.40      ![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))),
% 0.14/0.40      inference(skolemize,[status(sab)],[64])).
% 0.14/0.40  tff(66,plain,
% 0.14/0.40      (![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))),
% 0.14/0.40      inference(modus_ponens,[status(thm)],[65, 58])).
% 0.14/0.40  tff(67,plain,
% 0.14/0.40      (((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | (isa(other, knight) | isa(other, knave) | (~person(other)))) <=> ((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | isa(other, knight) | isa(other, knave) | (~person(other)))),
% 0.14/0.40      inference(rewrite,[status(thm)],[])).
% 0.14/0.40  tff(68,plain,
% 0.14/0.40      ((isa(other, knave) | isa(other, knight) | (~person(other))) <=> (isa(other, knight) | isa(other, knave) | (~person(other)))),
% 0.14/0.40      inference(rewrite,[status(thm)],[])).
% 0.14/0.40  tff(69,plain,
% 0.14/0.40      (((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | (isa(other, knave) | isa(other, knight) | (~person(other)))) <=> ((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | (isa(other, knight) | isa(other, knave) | (~person(other))))),
% 0.14/0.40      inference(monotonicity,[status(thm)],[68])).
% 0.14/0.40  tff(70,plain,
% 0.14/0.40      (((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | (isa(other, knave) | isa(other, knight) | (~person(other)))) <=> ((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | isa(other, knight) | isa(other, knave) | (~person(other)))),
% 0.14/0.40      inference(transitivity,[status(thm)],[69, 67])).
% 0.14/0.40  tff(71,plain,
% 0.14/0.40      ((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | (isa(other, knave) | isa(other, knight) | (~person(other)))),
% 0.14/0.40      inference(quant_inst,[status(thm)],[])).
% 0.14/0.40  tff(72,plain,
% 0.14/0.40      ((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | isa(other, knight) | isa(other, knave) | (~person(other))),
% 0.14/0.40      inference(modus_ponens,[status(thm)],[71, 70])).
% 0.14/0.40  tff(73,plain,
% 0.14/0.40      (isa(other, knight) | isa(other, knave)),
% 0.14/0.40      inference(unit_resolution,[status(thm)],[72, 66, 56])).
% 0.14/0.40  tff(74,plain,
% 0.14/0.40      (isa(other, knight)),
% 0.14/0.40      inference(unit_resolution,[status(thm)],[73, 53])).
% 0.14/0.40  tff(75,plain,
% 0.14/0.40      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~response(yes)) | (~isa(asked, knight)) | (~isa(other, knight)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(yes)) | (~isa(asked, knight)) | (~isa(other, knight)))),
% 0.14/0.40      inference(rewrite,[status(thm)],[])).
% 0.14/0.40  tff(76,plain,
% 0.14/0.40      (((~isa(other, knight)) | (~isa(asked, knight)) | (~response(yes))) <=> ((~response(yes)) | (~isa(asked, knight)) | (~isa(other, knight)))),
% 0.14/0.40      inference(rewrite,[status(thm)],[])).
% 0.14/0.40  tff(77,plain,
% 0.14/0.40      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knight)) | (~isa(asked, knight)) | (~response(yes)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~response(yes)) | (~isa(asked, knight)) | (~isa(other, knight))))),
% 0.14/0.40      inference(monotonicity,[status(thm)],[76])).
% 0.14/0.40  tff(78,plain,
% 0.14/0.40      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knight)) | (~isa(asked, knight)) | (~response(yes)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(yes)) | (~isa(asked, knight)) | (~isa(other, knight)))),
% 0.14/0.40      inference(transitivity,[status(thm)],[77, 75])).
% 0.14/0.40  tff(79,plain,
% 0.14/0.40      ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knight)) | (~isa(asked, knight)) | (~response(yes)))),
% 0.14/0.40      inference(quant_inst,[status(thm)],[])).
% 0.14/0.40  tff(80,plain,
% 0.14/0.40      ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(yes)) | (~isa(asked, knight)) | (~isa(other, knight))),
% 0.14/0.40      inference(modus_ponens,[status(thm)],[79, 78])).
% 0.14/0.40  tff(81,plain,
% 0.14/0.40      ($false),
% 0.14/0.40      inference(unit_resolution,[status(thm)],[80, 11, 74, 43, 10])).
% 0.14/0.40  tff(82,plain,(~isa(asked, knight)), inference(lemma,lemma(discharge,[]))).
% 0.14/0.41  tff(83,plain,
% 0.14/0.41      (person(asked) <=> person(asked)),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(84,axiom,(person(asked)), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','asked_person')).
% 0.14/0.41  tff(85,plain,
% 0.14/0.41      (person(asked)),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[84, 83])).
% 0.14/0.41  tff(86,plain,
% 0.14/0.41      (((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | (isa(asked, knight) | isa(asked, knave) | (~person(asked)))) <=> ((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | isa(asked, knight) | isa(asked, knave) | (~person(asked)))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(87,plain,
% 0.14/0.41      ((isa(asked, knave) | isa(asked, knight) | (~person(asked))) <=> (isa(asked, knight) | isa(asked, knave) | (~person(asked)))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(88,plain,
% 0.14/0.41      (((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | (isa(asked, knave) | isa(asked, knight) | (~person(asked)))) <=> ((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | (isa(asked, knight) | isa(asked, knave) | (~person(asked))))),
% 0.14/0.41      inference(monotonicity,[status(thm)],[87])).
% 0.14/0.41  tff(89,plain,
% 0.14/0.41      (((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | (isa(asked, knave) | isa(asked, knight) | (~person(asked)))) <=> ((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | isa(asked, knight) | isa(asked, knave) | (~person(asked)))),
% 0.14/0.41      inference(transitivity,[status(thm)],[88, 86])).
% 0.14/0.41  tff(90,plain,
% 0.14/0.41      ((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | (isa(asked, knave) | isa(asked, knight) | (~person(asked)))),
% 0.14/0.41      inference(quant_inst,[status(thm)],[])).
% 0.14/0.41  tff(91,plain,
% 0.14/0.41      ((~![X: $i] : (isa(X, knave) | isa(X, knight) | (~person(X)))) | isa(asked, knight) | isa(asked, knave) | (~person(asked))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[90, 89])).
% 0.14/0.41  tff(92,plain,
% 0.14/0.41      (isa(asked, knight) | isa(asked, knave)),
% 0.14/0.41      inference(unit_resolution,[status(thm)],[91, 66, 85])).
% 0.14/0.41  tff(93,plain,
% 0.14/0.41      (isa(asked, knave)),
% 0.14/0.41      inference(unit_resolution,[status(thm)],[92, 82])).
% 0.14/0.41  tff(94,assumption,(response(no)), introduced(assumption)).
% 0.14/0.41  tff(95,plain,
% 0.14/0.41      (^[X: $i] : refl(((~isa(X, knave)) | lies(X)) <=> ((~isa(X, knave)) | lies(X)))),
% 0.14/0.41      inference(bind,[status(th)],[])).
% 0.14/0.41  tff(96,plain,
% 0.14/0.41      (![X: $i] : ((~isa(X, knave)) | lies(X)) <=> ![X: $i] : ((~isa(X, knave)) | lies(X))),
% 0.14/0.41      inference(quant_intro,[status(thm)],[95])).
% 0.14/0.41  tff(97,plain,
% 0.14/0.41      (![X: $i] : ((~isa(X, knave)) | lies(X)) <=> ![X: $i] : ((~isa(X, knave)) | lies(X))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(98,axiom,(![X: $i] : ((~isa(X, knave)) | lies(X))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','knaves_make_false_statements')).
% 0.14/0.41  tff(99,plain,
% 0.14/0.41      (![X: $i] : ((~isa(X, knave)) | lies(X))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[98, 97])).
% 0.14/0.41  tff(100,plain,(
% 0.14/0.41      ![X: $i] : ((~isa(X, knave)) | lies(X))),
% 0.14/0.41      inference(skolemize,[status(sab)],[99])).
% 0.14/0.41  tff(101,plain,
% 0.14/0.41      (![X: $i] : ((~isa(X, knave)) | lies(X))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[100, 96])).
% 0.14/0.41  tff(102,plain,
% 0.14/0.41      (((~![X: $i] : ((~isa(X, knave)) | lies(X))) | (lies(asked) | (~isa(asked, knave)))) <=> ((~![X: $i] : ((~isa(X, knave)) | lies(X))) | lies(asked) | (~isa(asked, knave)))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(103,plain,
% 0.14/0.41      (((~isa(asked, knave)) | lies(asked)) <=> (lies(asked) | (~isa(asked, knave)))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(104,plain,
% 0.14/0.41      (((~![X: $i] : ((~isa(X, knave)) | lies(X))) | ((~isa(asked, knave)) | lies(asked))) <=> ((~![X: $i] : ((~isa(X, knave)) | lies(X))) | (lies(asked) | (~isa(asked, knave))))),
% 0.14/0.41      inference(monotonicity,[status(thm)],[103])).
% 0.14/0.41  tff(105,plain,
% 0.14/0.41      (((~![X: $i] : ((~isa(X, knave)) | lies(X))) | ((~isa(asked, knave)) | lies(asked))) <=> ((~![X: $i] : ((~isa(X, knave)) | lies(X))) | lies(asked) | (~isa(asked, knave)))),
% 0.14/0.41      inference(transitivity,[status(thm)],[104, 102])).
% 0.14/0.41  tff(106,plain,
% 0.14/0.41      ((~![X: $i] : ((~isa(X, knave)) | lies(X))) | ((~isa(asked, knave)) | lies(asked))),
% 0.14/0.41      inference(quant_inst,[status(thm)],[])).
% 0.14/0.41  tff(107,plain,
% 0.14/0.41      ((~![X: $i] : ((~isa(X, knave)) | lies(X))) | lies(asked) | (~isa(asked, knave))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[106, 105])).
% 0.14/0.41  tff(108,plain,
% 0.14/0.41      (lies(asked)),
% 0.14/0.41      inference(unit_resolution,[status(thm)],[107, 101, 93])).
% 0.14/0.41  tff(109,plain,
% 0.14/0.41      ((isa(asked, knight) | isa(other, knight) | (~response(no)) | (~lies(asked))) <=> (isa(asked, knight) | isa(other, knight) | (~response(no)) | (~lies(asked)))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(110,plain,
% 0.14/0.41      (((isa(asked, knight) | isa(other, knight) | (~response(no))) | (~lies(asked))) <=> (isa(asked, knight) | isa(other, knight) | (~response(no)) | (~lies(asked)))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(111,plain,
% 0.14/0.41      (((isa(asked, knight) | isa(other, knight)) | (~response(no))) <=> (isa(asked, knight) | isa(other, knight) | (~response(no)))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(112,plain,
% 0.14/0.41      ((((isa(asked, knight) | isa(other, knight)) | (~response(no))) | (~lies(asked))) <=> ((isa(asked, knight) | isa(other, knight) | (~response(no))) | (~lies(asked)))),
% 0.14/0.41      inference(monotonicity,[status(thm)],[111])).
% 0.14/0.41  tff(113,plain,
% 0.14/0.41      ((((isa(asked, knight) | isa(other, knight)) | (~response(no))) | (~lies(asked))) <=> (isa(asked, knight) | isa(other, knight) | (~response(no)) | (~lies(asked)))),
% 0.14/0.41      inference(transitivity,[status(thm)],[112, 110])).
% 0.14/0.41  tff(114,axiom,(((isa(asked, knight) | isa(other, knight)) | (~response(no))) | (~lies(asked))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','lie_one_is_a_knight')).
% 0.14/0.41  tff(115,plain,
% 0.14/0.41      (isa(asked, knight) | isa(other, knight) | (~response(no)) | (~lies(asked))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[114, 113])).
% 0.14/0.41  tff(116,plain,
% 0.14/0.41      (isa(asked, knight) | isa(other, knight) | (~response(no)) | (~lies(asked))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[115, 109])).
% 0.14/0.41  tff(117,plain,
% 0.14/0.41      (isa(asked, knight) | isa(other, knight) | (~response(no)) | (~lies(asked))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[116, 109])).
% 0.14/0.41  tff(118,plain,
% 0.14/0.41      (isa(asked, knight) | isa(other, knight) | (~response(no)) | (~lies(asked))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[117, 109])).
% 0.14/0.41  tff(119,plain,
% 0.14/0.41      (isa(asked, knight) | isa(other, knight) | (~response(no)) | (~lies(asked))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[118, 109])).
% 0.14/0.41  tff(120,plain,
% 0.14/0.41      (isa(asked, knight) | isa(other, knight) | (~response(no)) | (~lies(asked))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[119, 109])).
% 0.14/0.41  tff(121,plain,
% 0.14/0.41      (isa(asked, knight) | isa(other, knight) | (~response(no)) | (~lies(asked))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[120, 109])).
% 0.14/0.41  tff(122,plain,
% 0.14/0.41      (isa(asked, knight) | isa(other, knight) | (~response(no)) | (~lies(asked))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[121, 109])).
% 0.14/0.41  tff(123,plain,
% 0.14/0.41      (isa(other, knight)),
% 0.14/0.41      inference(unit_resolution,[status(thm)],[122, 94, 82, 108])).
% 0.14/0.41  tff(124,plain,
% 0.14/0.41      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~response(no)) | (~isa(asked, knave)) | (~isa(other, knight)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(no)) | (~isa(asked, knave)) | (~isa(other, knight)))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(125,plain,
% 0.14/0.41      (((~isa(other, knight)) | (~isa(asked, knave)) | (~response(no))) <=> ((~response(no)) | (~isa(asked, knave)) | (~isa(other, knight)))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(126,plain,
% 0.14/0.41      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knight)) | (~isa(asked, knave)) | (~response(no)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~response(no)) | (~isa(asked, knave)) | (~isa(other, knight))))),
% 0.14/0.41      inference(monotonicity,[status(thm)],[125])).
% 0.14/0.41  tff(127,plain,
% 0.14/0.41      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knight)) | (~isa(asked, knave)) | (~response(no)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(no)) | (~isa(asked, knave)) | (~isa(other, knight)))),
% 0.14/0.41      inference(transitivity,[status(thm)],[126, 124])).
% 0.14/0.41  tff(128,plain,
% 0.14/0.41      ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knight)) | (~isa(asked, knave)) | (~response(no)))),
% 0.14/0.41      inference(quant_inst,[status(thm)],[])).
% 0.14/0.41  tff(129,plain,
% 0.14/0.41      ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(no)) | (~isa(asked, knave)) | (~isa(other, knight))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[128, 127])).
% 0.14/0.41  tff(130,plain,
% 0.14/0.41      ($false),
% 0.14/0.41      inference(unit_resolution,[status(thm)],[129, 123, 94, 10, 93])).
% 0.14/0.41  tff(131,plain,(~response(no)), inference(lemma,lemma(discharge,[]))).
% 0.14/0.41  tff(132,plain,
% 0.14/0.41      ((response(yes) | response(no)) <=> (response(yes) | response(no))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(133,axiom,(response(yes) | response(no)), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','two_answers')).
% 0.14/0.41  tff(134,plain,
% 0.14/0.41      (response(yes) | response(no)),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[133, 132])).
% 0.14/0.41  tff(135,plain,
% 0.14/0.41      (response(yes) | response(no)),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[134, 132])).
% 0.14/0.41  tff(136,plain,
% 0.14/0.41      (response(yes) | response(no)),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[135, 132])).
% 0.14/0.41  tff(137,plain,
% 0.14/0.41      (response(yes) | response(no)),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[136, 132])).
% 0.14/0.41  tff(138,plain,
% 0.14/0.41      (response(yes) | response(no)),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[137, 132])).
% 0.14/0.41  tff(139,plain,
% 0.14/0.41      (response(yes) | response(no)),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[138, 132])).
% 0.14/0.41  tff(140,plain,
% 0.14/0.41      (response(yes) | response(no)),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[139, 132])).
% 0.14/0.41  tff(141,plain,
% 0.14/0.41      (response(yes) | response(no)),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[140, 132])).
% 0.14/0.41  tff(142,plain,
% 0.14/0.41      (response(yes)),
% 0.14/0.41      inference(unit_resolution,[status(thm)],[141, 131])).
% 0.14/0.41  tff(143,plain,
% 0.14/0.41      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~response(yes)) | (~isa(asked, knave)) | (~isa(other, knave)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(yes)) | (~isa(asked, knave)) | (~isa(other, knave)))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(144,plain,
% 0.14/0.41      (((~isa(other, knave)) | (~isa(asked, knave)) | (~response(yes))) <=> ((~response(yes)) | (~isa(asked, knave)) | (~isa(other, knave)))),
% 0.14/0.41      inference(rewrite,[status(thm)],[])).
% 0.14/0.41  tff(145,plain,
% 0.14/0.41      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knave)) | (~isa(asked, knave)) | (~response(yes)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~response(yes)) | (~isa(asked, knave)) | (~isa(other, knave))))),
% 0.14/0.41      inference(monotonicity,[status(thm)],[144])).
% 0.14/0.41  tff(146,plain,
% 0.14/0.41      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knave)) | (~isa(asked, knave)) | (~response(yes)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(yes)) | (~isa(asked, knave)) | (~isa(other, knave)))),
% 0.14/0.41      inference(transitivity,[status(thm)],[145, 143])).
% 0.14/0.41  tff(147,plain,
% 0.14/0.41      ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knave)) | (~isa(asked, knave)) | (~response(yes)))),
% 0.14/0.41      inference(quant_inst,[status(thm)],[])).
% 0.14/0.41  tff(148,plain,
% 0.14/0.41      ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(yes)) | (~isa(asked, knave)) | (~isa(other, knave))),
% 0.14/0.41      inference(modus_ponens,[status(thm)],[147, 146])).
% 0.14/0.41  tff(149,plain,
% 0.14/0.41      ($false),
% 0.14/0.41      inference(unit_resolution,[status(thm)],[148, 142, 10, 93, 44])).
% 0.14/0.41  tff(150,plain,(~isa(other, knave)), inference(lemma,lemma(discharge,[]))).
% 0.14/0.41  tff(151,plain,
% 0.14/0.41      (isa(other, knight)),
% 0.14/0.41      inference(unit_resolution,[status(thm)],[73, 150])).
% 0.14/0.41  tff(152,plain,
% 0.14/0.41      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~response(yes)) | (~isa(asked, knave)) | (~isa(other, knight)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(yes)) | (~isa(asked, knave)) | (~isa(other, knight)))),
% 0.14/0.42      inference(rewrite,[status(thm)],[])).
% 0.14/0.42  tff(153,plain,
% 0.14/0.42      (((~isa(other, knight)) | (~isa(asked, knave)) | (~response(yes))) <=> ((~response(yes)) | (~isa(asked, knave)) | (~isa(other, knight)))),
% 0.14/0.42      inference(rewrite,[status(thm)],[])).
% 0.14/0.42  tff(154,plain,
% 0.14/0.42      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knight)) | (~isa(asked, knave)) | (~response(yes)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~response(yes)) | (~isa(asked, knave)) | (~isa(other, knight))))),
% 0.14/0.42      inference(monotonicity,[status(thm)],[153])).
% 0.14/0.42  tff(155,plain,
% 0.14/0.42      (((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knight)) | (~isa(asked, knave)) | (~response(yes)))) <=> ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(yes)) | (~isa(asked, knave)) | (~isa(other, knight)))),
% 0.14/0.42      inference(transitivity,[status(thm)],[154, 152])).
% 0.14/0.42  tff(156,plain,
% 0.14/0.42      ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | ((~isa(other, knight)) | (~isa(asked, knave)) | (~response(yes)))),
% 0.14/0.42      inference(quant_inst,[status(thm)],[])).
% 0.14/0.42  tff(157,plain,
% 0.14/0.42      ((~![Y: $i, A: $i, X: $i] : ((~isa(other, Y)) | (~isa(asked, X)) | (~response(A)))) | (~response(yes)) | (~isa(asked, knave)) | (~isa(other, knight))),
% 0.14/0.42      inference(modus_ponens,[status(thm)],[156, 155])).
% 0.14/0.42  tff(158,plain,
% 0.14/0.42      ($false),
% 0.14/0.42      inference(unit_resolution,[status(thm)],[157, 151, 142, 10, 93])).
% 0.14/0.42  % SZS output end Proof
%------------------------------------------------------------------------------