TSTP Solution File: SWV331-2 by Twee---2.4.2
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : Twee---2.4.2
% Problem : SWV331-2 : TPTP v8.1.2. Released v3.2.0.
% Transfm : none
% Format : tptp:raw
% Command : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof
% Computer : n032.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 : Thu Aug 31 23:03:44 EDT 2023
% Result : Unsatisfiable 0.12s 0.36s
% Output : Proof 0.18s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.09/0.11 % Problem : SWV331-2 : TPTP v8.1.2. Released v3.2.0.
% 0.09/0.12 % Command : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof
% 0.12/0.32 % Computer : n032.cluster.edu
% 0.12/0.32 % Model : x86_64 x86_64
% 0.12/0.32 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.32 % Memory : 8042.1875MB
% 0.12/0.32 % OS : Linux 3.10.0-693.el7.x86_64
% 0.12/0.32 % CPULimit : 300
% 0.12/0.32 % WCLimit : 300
% 0.12/0.32 % DateTime : Tue Aug 29 07:43:01 EDT 2023
% 0.12/0.32 % CPUTime :
% 0.12/0.36 Command-line arguments: --no-flatten-goal
% 0.12/0.36
% 0.12/0.36 % SZS status Unsatisfiable
% 0.12/0.36
% 0.12/0.36 % SZS output start Proof
% 0.12/0.36 Take the following subset of the input axioms:
% 0.12/0.36 fof(cls_Public_OCrypt__imp__keysFor_0, axiom, ![V_K, V_X, V_H]: (~c_in(V_K, c_Message_OsymKeys, tc_nat) | (~c_in(c_Message_Omsg_OCrypt(V_K, V_X), V_H, tc_Message_Omsg) | c_in(V_K, c_Message_OkeysFor(V_H), tc_nat)))).
% 0.12/0.36 fof(cls_Yahalom_Onew__keys__not__used_0, axiom, ![V_evs, V_K2]: (~c_in(V_K2, c_Message_OkeysFor(c_Message_Oparts(c_Event_Oknows(c_Message_Oagent_OSpy, V_evs))), tc_nat) | (~c_in(V_K2, c_Message_OsymKeys, tc_nat) | (~c_in(V_evs, c_Yahalom_Oyahalom, tc_List_Olist(tc_Event_Oevent)) | c_in(c_Message_Omsg_OKey(V_K2), c_Event_Oused(V_evs), tc_Message_Omsg))))).
% 0.12/0.36 fof(cls_conjecture_0, negated_conjecture, c_in(v_evs3, c_Yahalom_Oyahalom, tc_List_Olist(tc_Event_Oevent))).
% 0.12/0.36 fof(cls_conjecture_1, negated_conjecture, ~c_in(c_Message_Omsg_OKey(v_K), c_Event_Oused(v_evs3), tc_Message_Omsg)).
% 0.12/0.36 fof(cls_conjecture_2, negated_conjecture, c_in(v_K, c_Message_OsymKeys, tc_nat)).
% 0.12/0.36 fof(cls_conjecture_5, negated_conjecture, c_in(c_Message_Omsg_OCrypt(v_K, c_Message_Omsg_ONonce(v_NB)), c_Message_Oparts(c_Event_Oknows(c_Message_Oagent_OSpy, v_evs3)), tc_Message_Omsg)).
% 0.12/0.36
% 0.12/0.36 Now clausify the problem and encode Horn clauses using encoding 3 of
% 0.12/0.36 http://www.cse.chalmers.se/~nicsma/papers/horn.pdf.
% 0.12/0.36 We repeatedly replace C & s=t => u=v by the two clauses:
% 0.12/0.36 fresh(y, y, x1...xn) = u
% 0.12/0.37 C => fresh(s, t, x1...xn) = v
% 0.12/0.37 where fresh is a fresh function symbol and x1..xn are the free
% 0.12/0.37 variables of u and v.
% 0.18/0.37 A predicate p(X) is encoded as p(X)=true (this is sound, because the
% 0.18/0.37 input problem has no model of domain size 1).
% 0.18/0.37
% 0.18/0.37 The encoding turns the above axioms into the following unit equations and goals:
% 0.18/0.37
% 0.18/0.37 Axiom 1 (cls_conjecture_2): c_in(v_K, c_Message_OsymKeys, tc_nat) = true.
% 0.18/0.37 Axiom 2 (cls_Yahalom_Onew__keys__not__used_0): fresh5(X, X, Y, Z) = true.
% 0.18/0.37 Axiom 3 (cls_Public_OCrypt__imp__keysFor_0): fresh3(X, X, Y, Z) = true.
% 0.18/0.37 Axiom 4 (cls_Public_OCrypt__imp__keysFor_0): fresh2(X, X, Y, Z) = c_in(Y, c_Message_OkeysFor(Z), tc_nat).
% 0.18/0.37 Axiom 5 (cls_conjecture_0): c_in(v_evs3, c_Yahalom_Oyahalom, tc_List_Olist(tc_Event_Oevent)) = true.
% 0.18/0.37 Axiom 6 (cls_Yahalom_Onew__keys__not__used_0): fresh(X, X, Y, Z) = c_in(c_Message_Omsg_OKey(Y), c_Event_Oused(Z), tc_Message_Omsg).
% 0.18/0.37 Axiom 7 (cls_Yahalom_Onew__keys__not__used_0): fresh4(X, X, Y, Z) = fresh5(c_in(Y, c_Message_OsymKeys, tc_nat), true, Y, Z).
% 0.18/0.37 Axiom 8 (cls_Public_OCrypt__imp__keysFor_0): fresh2(c_in(c_Message_Omsg_OCrypt(X, Y), Z, tc_Message_Omsg), true, X, Z) = fresh3(c_in(X, c_Message_OsymKeys, tc_nat), true, X, Z).
% 0.18/0.37 Axiom 9 (cls_conjecture_5): c_in(c_Message_Omsg_OCrypt(v_K, c_Message_Omsg_ONonce(v_NB)), c_Message_Oparts(c_Event_Oknows(c_Message_Oagent_OSpy, v_evs3)), tc_Message_Omsg) = true.
% 0.18/0.37 Axiom 10 (cls_Yahalom_Onew__keys__not__used_0): fresh4(c_in(X, c_Yahalom_Oyahalom, tc_List_Olist(tc_Event_Oevent)), true, Y, X) = fresh(c_in(Y, c_Message_OkeysFor(c_Message_Oparts(c_Event_Oknows(c_Message_Oagent_OSpy, X))), tc_nat), true, Y, X).
% 0.18/0.37
% 0.18/0.37 Goal 1 (cls_conjecture_1): c_in(c_Message_Omsg_OKey(v_K), c_Event_Oused(v_evs3), tc_Message_Omsg) = true.
% 0.18/0.37 Proof:
% 0.18/0.37 c_in(c_Message_Omsg_OKey(v_K), c_Event_Oused(v_evs3), tc_Message_Omsg)
% 0.18/0.37 = { by axiom 6 (cls_Yahalom_Onew__keys__not__used_0) R->L }
% 0.18/0.37 fresh(true, true, v_K, v_evs3)
% 0.18/0.37 = { by axiom 3 (cls_Public_OCrypt__imp__keysFor_0) R->L }
% 0.18/0.37 fresh(fresh3(true, true, v_K, c_Message_Oparts(c_Event_Oknows(c_Message_Oagent_OSpy, v_evs3))), true, v_K, v_evs3)
% 0.18/0.37 = { by axiom 1 (cls_conjecture_2) R->L }
% 0.18/0.37 fresh(fresh3(c_in(v_K, c_Message_OsymKeys, tc_nat), true, v_K, c_Message_Oparts(c_Event_Oknows(c_Message_Oagent_OSpy, v_evs3))), true, v_K, v_evs3)
% 0.18/0.37 = { by axiom 8 (cls_Public_OCrypt__imp__keysFor_0) R->L }
% 0.18/0.37 fresh(fresh2(c_in(c_Message_Omsg_OCrypt(v_K, c_Message_Omsg_ONonce(v_NB)), c_Message_Oparts(c_Event_Oknows(c_Message_Oagent_OSpy, v_evs3)), tc_Message_Omsg), true, v_K, c_Message_Oparts(c_Event_Oknows(c_Message_Oagent_OSpy, v_evs3))), true, v_K, v_evs3)
% 0.18/0.37 = { by axiom 9 (cls_conjecture_5) }
% 0.18/0.37 fresh(fresh2(true, true, v_K, c_Message_Oparts(c_Event_Oknows(c_Message_Oagent_OSpy, v_evs3))), true, v_K, v_evs3)
% 0.18/0.37 = { by axiom 4 (cls_Public_OCrypt__imp__keysFor_0) }
% 0.18/0.37 fresh(c_in(v_K, c_Message_OkeysFor(c_Message_Oparts(c_Event_Oknows(c_Message_Oagent_OSpy, v_evs3))), tc_nat), true, v_K, v_evs3)
% 0.18/0.37 = { by axiom 10 (cls_Yahalom_Onew__keys__not__used_0) R->L }
% 0.18/0.37 fresh4(c_in(v_evs3, c_Yahalom_Oyahalom, tc_List_Olist(tc_Event_Oevent)), true, v_K, v_evs3)
% 0.18/0.37 = { by axiom 5 (cls_conjecture_0) }
% 0.18/0.37 fresh4(true, true, v_K, v_evs3)
% 0.18/0.37 = { by axiom 7 (cls_Yahalom_Onew__keys__not__used_0) }
% 0.18/0.37 fresh5(c_in(v_K, c_Message_OsymKeys, tc_nat), true, v_K, v_evs3)
% 0.18/0.37 = { by axiom 1 (cls_conjecture_2) }
% 0.18/0.37 fresh5(true, true, v_K, v_evs3)
% 0.18/0.37 = { by axiom 2 (cls_Yahalom_Onew__keys__not__used_0) }
% 0.18/0.37 true
% 0.18/0.37 % SZS output end Proof
% 0.18/0.37
% 0.18/0.37 RESULT: Unsatisfiable (the axioms are contradictory).
%------------------------------------------------------------------------------