TSTP Solution File: PUZ035-1 by cvc5---1.0.5

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cvc5---1.0.5
% Problem  : PUZ035-1 : TPTP v8.2.0. Released v2.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : do_cvc5 %s %d

% Computer : n018.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 : Wed May 29 17:39:11 EDT 2024

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

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.16/0.17  % Problem    : PUZ035-1 : TPTP v8.2.0. Released v2.0.0.
% 0.18/0.18  % Command    : do_cvc5 %s %d
% 0.19/0.40  % Computer : n018.cluster.edu
% 0.19/0.40  % Model    : x86_64 x86_64
% 0.19/0.40  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.19/0.40  % Memory   : 8042.1875MB
% 0.19/0.40  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.19/0.40  % CPULimit   : 300
% 0.19/0.40  % WCLimit    : 300
% 0.19/0.40  % DateTime   : Sat May 25 19:46:24 EDT 2024
% 0.19/0.40  % CPUTime    : 
% 0.39/0.57  %----Proving TF0_NAR, FOF, or CNF
% 0.39/0.57  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 10...
% 0.39/0.60  % SZS status Unsatisfiable for /export/starexec/sandbox2/tmp/tmp.zvhBWF9fIa/cvc5---1.0.5_1427.smt2
% 0.39/0.60  % SZS output start Proof for /export/starexec/sandbox2/tmp/tmp.zvhBWF9fIa/cvc5---1.0.5_1427.smt2
% 0.39/0.60  (assume a0 (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))))
% 0.39/0.60  (assume a1 (forall ((X $$unsorted)) (or (not (tptp.isa X tptp.knight)) (not (tptp.isa X tptp.knave)))))
% 0.39/0.60  (assume a2 (forall ((X $$unsorted)) (or (not (tptp.isa X tptp.knight)) (tptp.tell_the_truth X))))
% 0.39/0.60  (assume a3 (forall ((X $$unsorted)) (or (not (tptp.isa X tptp.knave)) (tptp.lies X))))
% 0.39/0.60  (assume a4 (forall ((X $$unsorted)) (or (not (tptp.tell_the_truth X)) (not (tptp.lies X)))))
% 0.39/0.60  (assume a5 (or (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.other tptp.knight) (not (tptp.response tptp.yes)) (not (tptp.tell_the_truth tptp.asked))))
% 0.39/0.60  (assume a6 (or (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.other tptp.knight) (not (tptp.response tptp.no)) (not (tptp.lies tptp.asked))))
% 0.39/0.60  (assume a7 (forall ((Anyone $$unsorted)) (or (not (tptp.response tptp.yes)) (not (tptp.lies tptp.asked)) (not (tptp.isa Anyone tptp.knight)))))
% 0.39/0.60  (assume a8 (forall ((Anyone $$unsorted)) (or (not (tptp.response tptp.no)) (not (tptp.tell_the_truth tptp.asked)) (not (tptp.isa Anyone tptp.knight)))))
% 0.39/0.60  (assume a9 (forall ((Anyone $$unsorted)) (or (tptp.response tptp.yes) (not (tptp.tell_the_truth tptp.asked)) (not (tptp.isa Anyone tptp.knight)))))
% 0.39/0.60  (assume a10 (or (tptp.response tptp.no) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.other tptp.knight) (not (tptp.tell_the_truth tptp.asked))))
% 0.39/0.60  (assume a11 (or (tptp.response tptp.yes) (tptp.response tptp.no)))
% 0.39/0.60  (assume a12 (tptp.person tptp.asked))
% 0.39/0.60  (assume a13 (tptp.person tptp.other))
% 0.39/0.60  (assume a14 (forall ((A $$unsorted) (X $$unsorted) (Y $$unsorted)) (or (not (tptp.response A)) (not (tptp.isa tptp.asked X)) (not (tptp.isa tptp.other Y)))))
% 0.39/0.60  (step t1 (cl (=> (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (not (tptp.isa tptp.asked tptp.knave))) (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X)))) :rule implies_neg1)
% 0.39/0.60  (anchor :step t2)
% 0.39/0.60  (assume t2.a0 (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))))
% 0.39/0.60  (step t2.t1 (cl (or (not (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X)))) (not (tptp.isa tptp.asked tptp.knave)))) :rule forall_inst :args ((:= X tptp.knave)))
% 0.39/0.60  (step t2.t2 (cl (not (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X)))) (not (tptp.isa tptp.asked tptp.knave))) :rule or :premises (t2.t1))
% 0.39/0.60  (step t2.t3 (cl (not (tptp.isa tptp.asked tptp.knave))) :rule resolution :premises (t2.t2 t2.a0))
% 0.39/0.60  (step t2 (cl (not (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X)))) (not (tptp.isa tptp.asked tptp.knave))) :rule subproof :discharge (t2.a0))
% 0.39/0.60  (step t3 (cl (=> (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (not (tptp.isa tptp.asked tptp.knave))) (not (tptp.isa tptp.asked tptp.knave))) :rule resolution :premises (t1 t2))
% 0.39/0.60  (step t4 (cl (=> (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (not (tptp.isa tptp.asked tptp.knave))) (not (not (tptp.isa tptp.asked tptp.knave)))) :rule implies_neg2)
% 0.39/0.60  (step t5 (cl (=> (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (not (tptp.isa tptp.asked tptp.knave))) (=> (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (not (tptp.isa tptp.asked tptp.knave)))) :rule resolution :premises (t3 t4))
% 0.39/0.60  (step t6 (cl (=> (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (not (tptp.isa tptp.asked tptp.knave)))) :rule contraction :premises (t5))
% 0.39/0.60  (step t7 (cl (not (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X)))) (not (tptp.isa tptp.asked tptp.knave))) :rule implies :premises (t6))
% 0.39/0.60  (step t8 (cl (not (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave))) (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave)) :rule or_pos)
% 0.39/0.60  (step t9 (cl (tptp.isa tptp.asked tptp.knight) (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knave) (not (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave)))) :rule reordering :premises (t8))
% 0.39/0.60  (step t10 (cl (=> (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (not (tptp.isa tptp.asked tptp.knight))) (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X)))) :rule implies_neg1)
% 0.39/0.60  (anchor :step t11)
% 0.39/0.60  (assume t11.a0 (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))))
% 0.39/0.60  (step t11.t1 (cl (or (not (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X)))) (not (tptp.isa tptp.asked tptp.knight)))) :rule forall_inst :args ((:= X tptp.knight)))
% 0.39/0.60  (step t11.t2 (cl (not (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X)))) (not (tptp.isa tptp.asked tptp.knight))) :rule or :premises (t11.t1))
% 0.39/0.60  (step t11.t3 (cl (not (tptp.isa tptp.asked tptp.knight))) :rule resolution :premises (t11.t2 t11.a0))
% 0.39/0.60  (step t11 (cl (not (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X)))) (not (tptp.isa tptp.asked tptp.knight))) :rule subproof :discharge (t11.a0))
% 0.39/0.60  (step t12 (cl (=> (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (not (tptp.isa tptp.asked tptp.knight))) (not (tptp.isa tptp.asked tptp.knight))) :rule resolution :premises (t10 t11))
% 0.39/0.60  (step t13 (cl (=> (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (not (tptp.isa tptp.asked tptp.knight))) (not (not (tptp.isa tptp.asked tptp.knight)))) :rule implies_neg2)
% 0.39/0.60  (step t14 (cl (=> (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (not (tptp.isa tptp.asked tptp.knight))) (=> (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (not (tptp.isa tptp.asked tptp.knight)))) :rule resolution :premises (t12 t13))
% 0.39/0.60  (step t15 (cl (=> (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (not (tptp.isa tptp.asked tptp.knight)))) :rule contraction :premises (t14))
% 0.39/0.60  (step t16 (cl (not (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X)))) (not (tptp.isa tptp.asked tptp.knight))) :rule implies :premises (t15))
% 0.39/0.60  (step t17 (cl (not (tptp.isa tptp.asked tptp.knight)) (not (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))))) :rule reordering :premises (t16))
% 0.39/0.60  (step t18 (cl (not (= (forall ((A $$unsorted) (X $$unsorted) (Y $$unsorted)) (or (not (tptp.response A)) (not (tptp.isa tptp.asked X)) (not (tptp.isa tptp.other Y)))) (or (forall ((A $$unsorted)) (not (tptp.response A))) (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))))) (not (forall ((A $$unsorted) (X $$unsorted) (Y $$unsorted)) (or (not (tptp.response A)) (not (tptp.isa tptp.asked X)) (not (tptp.isa tptp.other Y))))) (or (forall ((A $$unsorted)) (not (tptp.response A))) (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))))) :rule equiv_pos2)
% 0.39/0.60  (step t19 (cl (= (forall ((A $$unsorted) (X $$unsorted) (Y $$unsorted)) (or (not (tptp.response A)) (not (tptp.isa tptp.asked X)) (not (tptp.isa tptp.other Y)))) (or (forall ((A $$unsorted)) (not (tptp.response A))) (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))))) :rule all_simplify)
% 0.39/0.60  (step t20 (cl (or (forall ((A $$unsorted)) (not (tptp.response A))) (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))))) :rule resolution :premises (t18 t19 a14))
% 0.39/0.60  (step t21 (cl (forall ((A $$unsorted)) (not (tptp.response A))) (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X))) (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))) :rule or :premises (t20))
% 0.39/0.60  (step t22 (cl (tptp.response tptp.yes) (tptp.response tptp.no)) :rule or :premises (a11))
% 0.39/0.60  (step t23 (cl (=> (forall ((A $$unsorted)) (not (tptp.response A))) (not (tptp.response tptp.no))) (forall ((A $$unsorted)) (not (tptp.response A)))) :rule implies_neg1)
% 0.39/0.60  (anchor :step t24)
% 0.39/0.60  (assume t24.a0 (forall ((A $$unsorted)) (not (tptp.response A))))
% 0.39/0.60  (step t24.t1 (cl (or (not (forall ((A $$unsorted)) (not (tptp.response A)))) (not (tptp.response tptp.no)))) :rule forall_inst :args ((:= A tptp.no)))
% 0.39/0.60  (step t24.t2 (cl (not (forall ((A $$unsorted)) (not (tptp.response A)))) (not (tptp.response tptp.no))) :rule or :premises (t24.t1))
% 0.39/0.60  (step t24.t3 (cl (not (tptp.response tptp.no))) :rule resolution :premises (t24.t2 t24.a0))
% 0.39/0.60  (step t24 (cl (not (forall ((A $$unsorted)) (not (tptp.response A)))) (not (tptp.response tptp.no))) :rule subproof :discharge (t24.a0))
% 0.39/0.60  (step t25 (cl (=> (forall ((A $$unsorted)) (not (tptp.response A))) (not (tptp.response tptp.no))) (not (tptp.response tptp.no))) :rule resolution :premises (t23 t24))
% 0.39/0.60  (step t26 (cl (=> (forall ((A $$unsorted)) (not (tptp.response A))) (not (tptp.response tptp.no))) (not (not (tptp.response tptp.no)))) :rule implies_neg2)
% 0.39/0.60  (step t27 (cl (=> (forall ((A $$unsorted)) (not (tptp.response A))) (not (tptp.response tptp.no))) (=> (forall ((A $$unsorted)) (not (tptp.response A))) (not (tptp.response tptp.no)))) :rule resolution :premises (t25 t26))
% 0.39/0.60  (step t28 (cl (=> (forall ((A $$unsorted)) (not (tptp.response A))) (not (tptp.response tptp.no)))) :rule contraction :premises (t27))
% 0.39/0.60  (step t29 (cl (not (forall ((A $$unsorted)) (not (tptp.response A)))) (not (tptp.response tptp.no))) :rule implies :premises (t28))
% 0.39/0.60  (step t30 (cl (not (tptp.response tptp.no)) (not (forall ((A $$unsorted)) (not (tptp.response A))))) :rule reordering :premises (t29))
% 0.39/0.60  (step t31 (cl (=> (forall ((A $$unsorted)) (not (tptp.response A))) (not (tptp.response tptp.yes))) (forall ((A $$unsorted)) (not (tptp.response A)))) :rule implies_neg1)
% 0.39/0.60  (anchor :step t32)
% 0.39/0.60  (assume t32.a0 (forall ((A $$unsorted)) (not (tptp.response A))))
% 0.39/0.60  (step t32.t1 (cl (or (not (forall ((A $$unsorted)) (not (tptp.response A)))) (not (tptp.response tptp.yes)))) :rule forall_inst :args ((:= A tptp.yes)))
% 0.39/0.60  (step t32.t2 (cl (not (forall ((A $$unsorted)) (not (tptp.response A)))) (not (tptp.response tptp.yes))) :rule or :premises (t32.t1))
% 0.39/0.60  (step t32.t3 (cl (not (tptp.response tptp.yes))) :rule resolution :premises (t32.t2 t32.a0))
% 0.39/0.60  (step t32 (cl (not (forall ((A $$unsorted)) (not (tptp.response A)))) (not (tptp.response tptp.yes))) :rule subproof :discharge (t32.a0))
% 0.39/0.60  (step t33 (cl (=> (forall ((A $$unsorted)) (not (tptp.response A))) (not (tptp.response tptp.yes))) (not (tptp.response tptp.yes))) :rule resolution :premises (t31 t32))
% 0.39/0.60  (step t34 (cl (=> (forall ((A $$unsorted)) (not (tptp.response A))) (not (tptp.response tptp.yes))) (not (not (tptp.response tptp.yes)))) :rule implies_neg2)
% 0.39/0.60  (step t35 (cl (=> (forall ((A $$unsorted)) (not (tptp.response A))) (not (tptp.response tptp.yes))) (=> (forall ((A $$unsorted)) (not (tptp.response A))) (not (tptp.response tptp.yes)))) :rule resolution :premises (t33 t34))
% 0.39/0.60  (step t36 (cl (=> (forall ((A $$unsorted)) (not (tptp.response A))) (not (tptp.response tptp.yes)))) :rule contraction :premises (t35))
% 0.39/0.60  (step t37 (cl (not (forall ((A $$unsorted)) (not (tptp.response A)))) (not (tptp.response tptp.yes))) :rule implies :premises (t36))
% 0.39/0.60  (step t38 (cl (not (tptp.response tptp.yes)) (not (forall ((A $$unsorted)) (not (tptp.response A))))) :rule reordering :premises (t37))
% 0.39/0.60  (step t39 (cl (not (forall ((A $$unsorted)) (not (tptp.response A)))) (not (forall ((A $$unsorted)) (not (tptp.response A))))) :rule resolution :premises (t22 t30 t38))
% 0.39/0.60  (step t40 (cl (not (forall ((A $$unsorted)) (not (tptp.response A))))) :rule contraction :premises (t39))
% 0.39/0.60  (step t41 (cl (not (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave))) (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave)) :rule or_pos)
% 0.39/0.60  (step t42 (cl (tptp.isa tptp.other tptp.knight) (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knave) (not (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave)))) :rule reordering :premises (t41))
% 0.39/0.60  (step t43 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))) (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave))) (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave)))) :rule implies_neg1)
% 0.39/0.60  (anchor :step t44)
% 0.39/0.60  (assume t44.a0 (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))))
% 0.39/0.60  (step t44.t1 (cl (or (not (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave)))) (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave)))) :rule forall_inst :args ((:= X tptp.other)))
% 0.39/0.60  (step t44.t2 (cl (not (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave)))) (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave))) :rule or :premises (t44.t1))
% 0.39/0.60  (step t44.t3 (cl (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave))) :rule resolution :premises (t44.t2 t44.a0))
% 0.39/0.60  (step t44 (cl (not (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave)))) (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave))) :rule subproof :discharge (t44.a0))
% 0.39/0.60  (step t45 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))) (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave))) (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave))) :rule resolution :premises (t43 t44))
% 0.39/0.60  (step t46 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))) (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave))) (not (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave)))) :rule implies_neg2)
% 0.39/0.60  (step t47 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))) (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave))) (=> (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))) (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave)))) :rule resolution :premises (t45 t46))
% 0.39/0.60  (step t48 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))) (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave)))) :rule contraction :premises (t47))
% 0.39/0.60  (step t49 (cl (not (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave)))) (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave))) :rule implies :premises (t48))
% 0.39/0.60  (step t50 (cl (or (not (tptp.person tptp.other)) (tptp.isa tptp.other tptp.knight) (tptp.isa tptp.other tptp.knave))) :rule resolution :premises (t49 a0))
% 0.39/0.60  (step t51 (cl (=> (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))) (not (tptp.isa tptp.other tptp.knave))) (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))) :rule implies_neg1)
% 0.39/0.60  (anchor :step t52)
% 0.39/0.60  (assume t52.a0 (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))))
% 0.39/0.60  (step t52.t1 (cl (or (not (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))) (not (tptp.isa tptp.other tptp.knave)))) :rule forall_inst :args ((:= Y tptp.knave)))
% 0.39/0.60  (step t52.t2 (cl (not (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))) (not (tptp.isa tptp.other tptp.knave))) :rule or :premises (t52.t1))
% 0.39/0.60  (step t52.t3 (cl (not (tptp.isa tptp.other tptp.knave))) :rule resolution :premises (t52.t2 t52.a0))
% 0.39/0.60  (step t52 (cl (not (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))) (not (tptp.isa tptp.other tptp.knave))) :rule subproof :discharge (t52.a0))
% 0.39/0.60  (step t53 (cl (=> (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))) (not (tptp.isa tptp.other tptp.knave))) (not (tptp.isa tptp.other tptp.knave))) :rule resolution :premises (t51 t52))
% 0.39/0.60  (step t54 (cl (=> (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))) (not (tptp.isa tptp.other tptp.knave))) (not (not (tptp.isa tptp.other tptp.knave)))) :rule implies_neg2)
% 0.39/0.60  (step t55 (cl (=> (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))) (not (tptp.isa tptp.other tptp.knave))) (=> (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))) (not (tptp.isa tptp.other tptp.knave)))) :rule resolution :premises (t53 t54))
% 0.39/0.60  (step t56 (cl (=> (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))) (not (tptp.isa tptp.other tptp.knave)))) :rule contraction :premises (t55))
% 0.39/0.60  (step t57 (cl (not (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))) (not (tptp.isa tptp.other tptp.knave))) :rule implies :premises (t56))
% 0.39/0.60  (step t58 (cl (=> (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))) (not (tptp.isa tptp.other tptp.knight))) (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))) :rule implies_neg1)
% 0.39/0.60  (anchor :step t59)
% 0.39/0.60  (assume t59.a0 (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))))
% 0.39/0.60  (step t59.t1 (cl (or (not (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))) (not (tptp.isa tptp.other tptp.knight)))) :rule forall_inst :args ((:= Y tptp.knight)))
% 0.39/0.60  (step t59.t2 (cl (not (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))) (not (tptp.isa tptp.other tptp.knight))) :rule or :premises (t59.t1))
% 0.39/0.60  (step t59.t3 (cl (not (tptp.isa tptp.other tptp.knight))) :rule resolution :premises (t59.t2 t59.a0))
% 0.39/0.60  (step t59 (cl (not (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))) (not (tptp.isa tptp.other tptp.knight))) :rule subproof :discharge (t59.a0))
% 0.39/0.60  (step t60 (cl (=> (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))) (not (tptp.isa tptp.other tptp.knight))) (not (tptp.isa tptp.other tptp.knight))) :rule resolution :premises (t58 t59))
% 0.39/0.60  (step t61 (cl (=> (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))) (not (tptp.isa tptp.other tptp.knight))) (not (not (tptp.isa tptp.other tptp.knight)))) :rule implies_neg2)
% 0.39/0.60  (step t62 (cl (=> (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))) (not (tptp.isa tptp.other tptp.knight))) (=> (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))) (not (tptp.isa tptp.other tptp.knight)))) :rule resolution :premises (t60 t61))
% 0.39/0.60  (step t63 (cl (=> (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))) (not (tptp.isa tptp.other tptp.knight)))) :rule contraction :premises (t62))
% 0.39/0.60  (step t64 (cl (not (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))) (not (tptp.isa tptp.other tptp.knight))) :rule implies :premises (t63))
% 0.39/0.60  (step t65 (cl (not (tptp.isa tptp.other tptp.knight)) (not (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))))) :rule reordering :premises (t64))
% 0.39/0.60  (step t66 (cl (not (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y)))) (not (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))))) :rule resolution :premises (t42 t50 a13 t57 t65))
% 0.39/0.60  (step t67 (cl (not (forall ((Y $$unsorted)) (not (tptp.isa tptp.other Y))))) :rule contraction :premises (t66))
% 0.39/0.60  (step t68 (cl (forall ((X $$unsorted)) (not (tptp.isa tptp.asked X)))) :rule resolution :premises (t21 t40 t67))
% 0.39/0.60  (step t69 (cl (not (tptp.isa tptp.asked tptp.knight))) :rule resolution :premises (t17 t68))
% 0.39/0.60  (step t70 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))) (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave))) (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave)))) :rule implies_neg1)
% 0.39/0.60  (anchor :step t71)
% 0.39/0.60  (assume t71.a0 (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))))
% 0.39/0.60  (step t71.t1 (cl (or (not (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave)))) (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave)))) :rule forall_inst :args ((:= X tptp.asked)))
% 0.39/0.60  (step t71.t2 (cl (not (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave)))) (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave))) :rule or :premises (t71.t1))
% 0.39/0.60  (step t71.t3 (cl (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave))) :rule resolution :premises (t71.t2 t71.a0))
% 0.39/0.60  (step t71 (cl (not (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave)))) (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave))) :rule subproof :discharge (t71.a0))
% 0.39/0.60  (step t72 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))) (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave))) (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave))) :rule resolution :premises (t70 t71))
% 0.39/0.60  (step t73 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))) (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave))) (not (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave)))) :rule implies_neg2)
% 0.39/0.60  (step t74 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))) (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave))) (=> (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))) (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave)))) :rule resolution :premises (t72 t73))
% 0.39/0.60  (step t75 (cl (=> (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave))) (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave)))) :rule contraction :premises (t74))
% 0.39/0.60  (step t76 (cl (not (forall ((X $$unsorted)) (or (not (tptp.person X)) (tptp.isa X tptp.knight) (tptp.isa X tptp.knave)))) (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave))) :rule implies :premises (t75))
% 0.39/0.60  (step t77 (cl (or (not (tptp.person tptp.asked)) (tptp.isa tptp.asked tptp.knight) (tptp.isa tptp.asked tptp.knave))) :rule resolution :premises (t76 a0))
% 0.39/0.60  (step t78 (cl (tptp.isa tptp.asked tptp.knave)) :rule resolution :premises (t9 t69 a12 t77))
% 0.39/0.60  (step t79 (cl) :rule resolution :premises (t7 t78 t68))
% 0.39/0.60  
% 0.39/0.60  % SZS output end Proof for /export/starexec/sandbox2/tmp/tmp.zvhBWF9fIa/cvc5---1.0.5_1427.smt2
% 0.39/0.61  % cvc5---1.0.5 exiting
% 0.39/0.61  % cvc5---1.0.5 exiting
%------------------------------------------------------------------------------