%------------------------------------------------------------------------------
% File : Z3---4.15.1
% Problem : GRA005+1 : TPTP v9.0.0. Bugfixed v3.2.0.
% Transfm : none
% Format : tptp
% Command : run_E %s %d THM
% Computer : n014.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 : Sat Jun 21 05:06:36 AM UTC 2025
% Result : Theorem 0.21s 0.40s
% Output : Proof 0.21s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.08/0.13 % Problem : GRA005+1 : TPTP v9.0.0. Bugfixed v3.2.0.
% 0.08/0.13 % Command : run_E %s %d THM
% 0.14/0.34 % Computer : n014.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 : Thu Jun 19 15:22:39 EDT 2025
% 0.14/0.35 % CPUTime :
% 0.21/0.40 % SZS status Theorem
% 0.21/0.40 % SZS output start Proof
% 0.21/0.40 tff(head_of_type, type, (
% 0.21/0.40 head_of: $i > $i)).
% 0.21/0.40 tff(tptp_fun_E2_10_type, type, (
% 0.21/0.40 tptp_fun_E2_10: $i)).
% 0.21/0.40 tff(tail_of_type, type, (
% 0.21/0.40 tail_of: $i > $i)).
% 0.21/0.40 tff(tptp_fun_E1_11_type, type, (
% 0.21/0.40 tptp_fun_E1_11: $i)).
% 0.21/0.40 tff(precedes_type, type, (
% 0.21/0.40 precedes: ( $i * $i * $i ) > $o)).
% 0.21/0.40 tff(tptp_fun_P_9_type, type, (
% 0.21/0.40 tptp_fun_P_9: $i)).
% 0.21/0.40 tff(tptp_fun_E3_14_type, type, (
% 0.21/0.40 tptp_fun_E3_14: $i)).
% 0.21/0.40 tff(edge_type, type, (
% 0.21/0.40 edge: $i > $o)).
% 0.21/0.40 tff(shortest_path_type, type, (
% 0.21/0.40 shortest_path: ( $i * $i * $i ) > $o)).
% 0.21/0.40 tff(tptp_fun_V2_12_type, type, (
% 0.21/0.40 tptp_fun_V2_12: $i)).
% 0.21/0.40 tff(tptp_fun_V1_13_type, type, (
% 0.21/0.40 tptp_fun_V1_13: $i)).
% 0.21/0.40 tff(1,plain,
% 0.21/0.40 (((shortest_path(V1!13, V2!12, P!9) & precedes(E1!11, E2!10, P!9)) & (edge(E3!14) & (tail_of(E3!14) = tail_of(E1!11)) & (head_of(E3!14) = head_of(E2!10)))) <=> (shortest_path(V1!13, V2!12, P!9) & precedes(E1!11, E2!10, P!9) & edge(E3!14) & (tail_of(E3!14) = tail_of(E1!11)) & (head_of(E3!14) = head_of(E2!10)))),
% 0.21/0.40 inference(rewrite,[status(thm)],[])).
% 0.21/0.40 tff(2,plain,
% 0.21/0.40 ((~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | (~?[E3: $i] : (edge(E3) & (tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))))) <=> (~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | (~?[E3: $i] : (edge(E3) & (tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2))))))),
% 0.21/0.40 inference(rewrite,[status(thm)],[])).
% 0.21/0.40 tff(3,plain,
% 0.21/0.40 ((~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((shortest_path(V1, V2, P) & precedes(E1, E2, P)) => (~?[E3: $i] : ((edge(E3) & (tail_of(E3) = tail_of(E1))) & (head_of(E3) = head_of(E2)))))) <=> (~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | (~?[E3: $i] : (edge(E3) & (tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2))))))),
% 0.21/0.40 inference(rewrite,[status(thm)],[])).
% 0.21/0.40 tff(4,axiom,(~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((shortest_path(V1, V2, P) & precedes(E1, E2, P)) => (~?[E3: $i] : ((edge(E3) & (tail_of(E3) = tail_of(E1))) & (head_of(E3) = head_of(E2)))))), file('/export/starexec/sandbox/benchmark/theBenchmark.p','no_short_cut_edge')).
% 0.21/0.40 tff(5,plain,
% 0.21/0.40 (~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | (~?[E3: $i] : (edge(E3) & (tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))))),
% 0.21/0.40 inference(modus_ponens,[status(thm)],[4, 3])).
% 0.21/0.40 tff(6,plain,
% 0.21/0.40 (~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | (~?[E3: $i] : (edge(E3) & (tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))))),
% 0.21/0.40 inference(modus_ponens,[status(thm)],[5, 2])).
% 0.21/0.40 tff(7,plain,
% 0.21/0.40 (~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | (~?[E3: $i] : (edge(E3) & (tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))))),
% 0.21/0.40 inference(modus_ponens,[status(thm)],[6, 2])).
% 0.21/0.40 tff(8,plain,
% 0.21/0.40 (~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | (~?[E3: $i] : (edge(E3) & (tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))))),
% 0.21/0.40 inference(modus_ponens,[status(thm)],[7, 2])).
% 0.21/0.40 tff(9,plain,
% 0.21/0.40 (shortest_path(V1!13, V2!12, P!9) & precedes(E1!11, E2!10, P!9) & edge(E3!14) & (tail_of(E3!14) = tail_of(E1!11)) & (head_of(E3!14) = head_of(E2!10))),
% 0.21/0.40 inference(modus_ponens,[status(thm)],[8, 1])).
% 0.21/0.40 tff(10,plain,
% 0.21/0.40 (precedes(E1!11, E2!10, P!9)),
% 0.21/0.40 inference(and_elim,[status(thm)],[9])).
% 0.21/0.40 tff(11,plain,
% 0.21/0.40 (shortest_path(V1!13, V2!12, P!9)),
% 0.21/0.40 inference(and_elim,[status(thm)],[9])).
% 0.21/0.40 tff(12,plain,
% 0.21/0.40 (^[V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : refl(((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P)))) <=> ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P)))))),
% 0.21/0.40 inference(bind,[status(th)],[])).
% 0.21/0.40 tff(13,plain,
% 0.21/0.40 (![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P)))) <=> ![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))),
% 0.21/0.40 inference(quant_intro,[status(thm)],[12])).
% 0.21/0.40 tff(14,plain,
% 0.21/0.40 (^[V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : rewrite(((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P)))) <=> ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P)))))),
% 0.21/0.40 inference(bind,[status(th)],[])).
% 0.21/0.40 tff(15,plain,
% 0.21/0.40 (![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P)))) <=> ![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))),
% 0.21/0.40 inference(quant_intro,[status(thm)],[14])).
% 0.21/0.40 tff(16,plain,
% 0.21/0.40 (![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P)))) <=> ![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))),
% 0.21/0.40 inference(transitivity,[status(thm)],[15, 13])).
% 0.21/0.40 tff(17,plain,
% 0.21/0.40 (^[V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : trans(monotonicity(trans(monotonicity(rewrite((shortest_path(V1, V2, P) & precedes(E1, E2, P)) <=> (~((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P))))), ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) <=> (~(~((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P))))))), rewrite((~(~((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P))))) <=> ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)))), ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) <=> ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P))))), trans(monotonicity(quant_intro(proof_bind(^[E3: $i] : trans(monotonicity(rewrite(((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2))) <=> (~((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2)))))), ((~((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) <=> (~(~((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2)))))))), rewrite((~(~((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2)))))) <=> ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))), ((~((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) <=> ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))))), (![E3: $i] : (~((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) <=> ![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2)))))), ((![E3: $i] : (~((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))) <=> (![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))))), rewrite((![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))) <=> (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P)))), ((![E3: $i] : (~((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))) <=> (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))), (((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | (![E3: $i] : (~((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P)))) <=> (((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P))) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P)))))), rewrite((((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P))) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P)))) <=> ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))), (((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | (![E3: $i] : (~((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P)))) <=> ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))))),
% 0.21/0.40 inference(bind,[status(th)],[])).
% 0.21/0.40 tff(18,plain,
% 0.21/0.40 (![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | (![E3: $i] : (~((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P)))) <=> ![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))),
% 0.21/0.40 inference(quant_intro,[status(thm)],[17])).
% 0.21/0.40 tff(19,plain,
% 0.21/0.40 (![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P)))) <=> ![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))))),
% 0.21/0.40 inference(rewrite,[status(thm)],[])).
% 0.21/0.40 tff(20,plain,
% 0.21/0.40 (^[V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : trans(monotonicity(monotonicity(rewrite((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) <=> (~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2))))), (((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))) <=> ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))))), (((shortest_path(V1, V2, P) & precedes(E1, E2, P)) => ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P)))) <=> ((shortest_path(V1, V2, P) & precedes(E1, E2, P)) => ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P)))))), rewrite(((shortest_path(V1, V2, P) & precedes(E1, E2, P)) => ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P)))) <=> ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))))), (((shortest_path(V1, V2, P) & precedes(E1, E2, P)) => ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P)))) <=> ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))))))),
% 0.21/0.40 inference(bind,[status(th)],[])).
% 0.21/0.40 tff(21,plain,
% 0.21/0.40 (![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((shortest_path(V1, V2, P) & precedes(E1, E2, P)) => ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P)))) <=> ![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))))),
% 0.21/0.40 inference(quant_intro,[status(thm)],[20])).
% 0.21/0.40 tff(22,axiom,(![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((shortest_path(V1, V2, P) & precedes(E1, E2, P)) => ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))))), file('/export/starexec/sandbox/benchmark/Axioms/GRA001+0.ax','shortest_path_properties')).
% 0.21/0.40 tff(23,plain,
% 0.21/0.40 (![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))))),
% 0.21/0.40 inference(modus_ponens,[status(thm)],[22, 21])).
% 0.21/0.40 tff(24,plain,
% 0.21/0.40 (![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | ((~?[E3: $i] : ((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))))),
% 0.21/0.40 inference(modus_ponens,[status(thm)],[23, 19])).
% 0.21/0.40 tff(25,plain,(
% 0.21/0.40 ![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~(shortest_path(V1, V2, P) & precedes(E1, E2, P))) | (![E3: $i] : (~((tail_of(E3) = tail_of(E1)) & (head_of(E3) = head_of(E2)))) & (~precedes(E2, E1, P))))),
% 0.21/0.40 inference(skolemize,[status(sab)],[24])).
% 0.21/0.40 tff(26,plain,
% 0.21/0.40 (![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))),
% 0.21/0.40 inference(modus_ponens,[status(thm)],[25, 18])).
% 0.21/0.40 tff(27,plain,
% 0.21/0.40 (![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))),
% 0.21/0.40 inference(modus_ponens,[status(thm)],[26, 16])).
% 0.21/0.40 tff(28,plain,
% 0.21/0.40 (((~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))) | ((~shortest_path(V1!13, V2!12, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))) | (~precedes(E1!11, E2!10, P!9)))) <=> ((~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))) | (~shortest_path(V1!13, V2!12, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))) | (~precedes(E1!11, E2!10, P!9)))),
% 0.21/0.40 inference(rewrite,[status(thm)],[])).
% 0.21/0.40 tff(29,plain,
% 0.21/0.40 (((~shortest_path(V1!13, V2!12, P!9)) | (~precedes(E1!11, E2!10, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9)))) <=> ((~shortest_path(V1!13, V2!12, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))) | (~precedes(E1!11, E2!10, P!9)))),
% 0.21/0.40 inference(rewrite,[status(thm)],[])).
% 0.21/0.40 tff(30,plain,
% 0.21/0.40 ((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) <=> (~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10)))))),
% 0.21/0.40 inference(rewrite,[status(thm)],[])).
% 0.21/0.40 tff(31,plain,
% 0.21/0.40 (((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9)) <=> ((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))),
% 0.21/0.40 inference(monotonicity,[status(thm)],[30])).
% 0.21/0.40 tff(32,plain,
% 0.21/0.40 ((~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))) <=> (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9)))),
% 0.21/0.40 inference(monotonicity,[status(thm)],[31])).
% 0.21/0.40 tff(33,plain,
% 0.21/0.40 (((~shortest_path(V1!13, V2!12, P!9)) | (~precedes(E1!11, E2!10, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9)))) <=> ((~shortest_path(V1!13, V2!12, P!9)) | (~precedes(E1!11, E2!10, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))))),
% 0.21/0.40 inference(monotonicity,[status(thm)],[32])).
% 0.21/0.40 tff(34,plain,
% 0.21/0.41 (((~shortest_path(V1!13, V2!12, P!9)) | (~precedes(E1!11, E2!10, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9)))) <=> ((~shortest_path(V1!13, V2!12, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))) | (~precedes(E1!11, E2!10, P!9)))),
% 0.21/0.41 inference(transitivity,[status(thm)],[33, 29])).
% 0.21/0.41 tff(35,plain,
% 0.21/0.41 (((~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))) | ((~shortest_path(V1!13, V2!12, P!9)) | (~precedes(E1!11, E2!10, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))))) <=> ((~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))) | ((~shortest_path(V1!13, V2!12, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))) | (~precedes(E1!11, E2!10, P!9))))),
% 0.21/0.41 inference(monotonicity,[status(thm)],[34])).
% 0.21/0.41 tff(36,plain,
% 0.21/0.41 (((~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))) | ((~shortest_path(V1!13, V2!12, P!9)) | (~precedes(E1!11, E2!10, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))))) <=> ((~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))) | (~shortest_path(V1!13, V2!12, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))) | (~precedes(E1!11, E2!10, P!9)))),
% 0.21/0.41 inference(transitivity,[status(thm)],[35, 28])).
% 0.21/0.41 tff(37,plain,
% 0.21/0.41 ((~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))) | ((~shortest_path(V1!13, V2!12, P!9)) | (~precedes(E1!11, E2!10, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))))),
% 0.21/0.41 inference(quant_inst,[status(thm)],[])).
% 0.21/0.41 tff(38,plain,
% 0.21/0.41 ((~![V1: $i, V2: $i, E1: $i, E2: $i, P: $i] : ((~shortest_path(V1, V2, P)) | (~precedes(E1, E2, P)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1))) | (~(head_of(E3) = head_of(E2))))) | precedes(E2, E1, P))))) | (~shortest_path(V1!13, V2!12, P!9)) | (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))) | (~precedes(E1!11, E2!10, P!9))),
% 0.21/0.41 inference(modus_ponens,[status(thm)],[37, 36])).
% 0.21/0.41 tff(39,plain,
% 0.21/0.41 (~((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9))),
% 0.21/0.41 inference(unit_resolution,[status(thm)],[38, 27, 11, 10])).
% 0.21/0.41 tff(40,plain,
% 0.21/0.41 (((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | precedes(E2!10, E1!11, P!9)) | ![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))),
% 0.21/0.41 inference(tautology,[status(thm)],[])).
% 0.21/0.41 tff(41,plain,
% 0.21/0.41 (![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))),
% 0.21/0.41 inference(unit_resolution,[status(thm)],[40, 39])).
% 0.21/0.41 tff(42,plain,
% 0.21/0.41 (head_of(E3!14) = head_of(E2!10)),
% 0.21/0.41 inference(and_elim,[status(thm)],[9])).
% 0.21/0.41 tff(43,plain,
% 0.21/0.41 (tail_of(E3!14) = tail_of(E1!11)),
% 0.21/0.41 inference(and_elim,[status(thm)],[9])).
% 0.21/0.41 tff(44,plain,
% 0.21/0.41 (((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | ((~(tail_of(E3!14) = tail_of(E1!11))) | (~(head_of(E3!14) = head_of(E2!10))))) <=> ((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | (~(tail_of(E3!14) = tail_of(E1!11))) | (~(head_of(E3!14) = head_of(E2!10))))),
% 0.21/0.41 inference(rewrite,[status(thm)],[])).
% 0.21/0.41 tff(45,plain,
% 0.21/0.41 ((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | ((~(tail_of(E3!14) = tail_of(E1!11))) | (~(head_of(E3!14) = head_of(E2!10))))),
% 0.21/0.41 inference(quant_inst,[status(thm)],[])).
% 0.21/0.41 tff(46,plain,
% 0.21/0.41 ((~![E3: $i] : ((~(tail_of(E3) = tail_of(E1!11))) | (~(head_of(E3) = head_of(E2!10))))) | (~(tail_of(E3!14) = tail_of(E1!11))) | (~(head_of(E3!14) = head_of(E2!10)))),
% 0.21/0.41 inference(modus_ponens,[status(thm)],[45, 44])).
% 0.21/0.41 tff(47,plain,
% 0.21/0.41 ($false),
% 0.21/0.41 inference(unit_resolution,[status(thm)],[46, 43, 42, 41])).
% 0.21/0.41 % SZS output end Proof
% 0.21/0.41 % E exiting
%------------------------------------------------------------------------------