TSTP Solution File: SWW599_2 by cvc5---1.0.5

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cvc5---1.0.5
% Problem  : SWW599_2 : TPTP v8.1.2. Released v6.1.0.
% Transfm  : none
% Format   : tptp
% Command  : do_cvc5 %s %d

% Computer : n004.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 : Fri Sep  1 00:21:39 EDT 2023

% Result   : Theorem 15.48s 15.72s
% Output   : Proof 15.48s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.12/0.13  % Problem    : SWW599_2 : TPTP v8.1.2. Released v6.1.0.
% 0.12/0.14  % Command    : do_cvc5 %s %d
% 0.13/0.35  % Computer : n004.cluster.edu
% 0.13/0.35  % Model    : x86_64 x86_64
% 0.13/0.35  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.13/0.35  % Memory   : 8042.1875MB
% 0.13/0.35  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.13/0.35  % CPULimit   : 300
% 0.13/0.35  % WCLimit    : 300
% 0.13/0.35  % DateTime   : Sun Aug 27 17:58:07 EDT 2023
% 0.13/0.35  % CPUTime    : 
% 0.20/0.49  %----Proving TF0_ARI
% 15.48/15.72  ------- convert to smt2 : /export/starexec/sandbox2/tmp/tmp.SZJzrnZz3z/cvc5---1.0.5_17545.p...
% 15.48/15.72  ------- get file name : TPTP file name is SWW599_2
% 15.48/15.72  ------- cvc5-tfa : /export/starexec/sandbox2/solver/bin/cvc5---1.0.5_17545.smt2...
% 15.48/15.72  --- Run --finite-model-find --decision=internal at 15...
% 15.48/15.72  --- Run --decision=internal --simplification=none --no-inst-no-entail --no-cbqi --full-saturate-quant at 15...
% 15.48/15.72  % SZS status Theorem for SWW599_2
% 15.48/15.72  % SZS output start Proof for SWW599_2
% 15.48/15.72  (
% 15.48/15.72  (let ((_let_1 (not (forall ((A Int) (A1 tptp.map_int_int) (N Int)) (let ((_let_1 (<= 0 N))) (=> (and (<= 0 A) (= A (+ N 2)) (<= 2 N) (forall ((I Int)) (let ((_let_1 (tptp.tb2t (tptp.get tptp.int tptp.int (tptp.t2tb2 A1) (tptp.t2tb I))))) (=> (and (<= 0 I) (< I A)) (and (<= 0 _let_1) (< _let_1 N))))) (exists ((V1 Int)) (and (tptp.appear_twice1 (tptp.tb2t1 (tptp.mk_array1 tptp.int A (tptp.t2tb2 A1))) V1 (+ N 2)) (exists ((V2 Int)) (and (tptp.appear_twice1 (tptp.tb2t1 (tptp.mk_array1 tptp.int A (tptp.t2tb2 A1))) V2 (+ N 2)) (not (= V2 V1))))))) (=> _let_1 (=> _let_1 (=> (<= 0 (+ N 1)) (forall ((V2 Int) (V1 Int) (Deja_vu tptp.map_int_bool)) (let ((_let_1 (tptp.tb2t1 (tptp.mk_array1 tptp.int A (tptp.t2tb2 A1))))) (let ((_let_2 (= V2 (- 1)))) (let ((_let_3 (= V1 (- 1)))) (let ((_let_4 (+ (+ N 1) 1))) (=> (and (=> _let_3 _let_2) (=> (not _let_3) (tptp.appear_twice1 _let_1 V1 _let_4)) (=> (not _let_2) (and (tptp.appear_twice1 _let_1 V2 _let_4) (not (= V2 V1)))) (forall ((V Int)) (let ((_let_1 (= (tptp.tb2t3 (tptp.get tptp.bool tptp.int (tptp.t2tb4 Deja_vu) (tptp.t2tb V))) tptp.true1))) (=> (and (<= 0 V) (< V N)) (or (and _let_1 (exists ((J Int)) (and (<= 0 J) (< J (+ (+ N 1) 1)) (= (tptp.tb2t (tptp.get tptp.int tptp.int (tptp.t2tb2 A1) (tptp.t2tb J))) V)))) (and (not _let_1) (forall ((J Int)) (=> (and (<= 0 J) (< J (+ (+ N 1) 1))) (not (= (tptp.tb2t (tptp.get tptp.int tptp.int (tptp.t2tb2 A1) (tptp.t2tb J))) V))))))))) (=> _let_3 (forall ((V Int)) (=> (and (<= 0 V) (< V N)) (not (tptp.appear_twice1 (tptp.tb2t1 (tptp.mk_array1 tptp.int A (tptp.t2tb2 A1))) V (+ (+ N 1) 1)))))) (=> _let_2 (forall ((V Int)) (=> (and (<= 0 V) (< V N)) (=> (not (= V V1)) (not (tptp.appear_twice1 (tptp.tb2t1 (tptp.mk_array1 tptp.int A (tptp.t2tb2 A1))) V (+ (+ N 1) 1)))))))) (tptp.appear_twice1 _let_1 V1 (+ N 2))))))))))))))))) (let ((_let_2 (forall ((X tptp.map_int_int)) (tptp.sort1 (tptp.map tptp.int tptp.int) (tptp.t2tb2 X))))) (let ((_let_3 (forall ((A tptp.array_int) (V Int) (U Int)) (= (tptp.appear_twice1 A V U) (exists ((I Int)) (and (<= 0 I) (< I U) (= (tptp.tb2t (tptp.get2 tptp.int (tptp.t2tb1 A) I)) V) (exists ((J Int)) (and (<= 0 J) (< J U) (not (= J I)) (= (tptp.tb2t (tptp.get2 tptp.int (tptp.t2tb1 A) J)) V))))))))) (let ((_let_4 (forall ((J tptp.uni)) (= (tptp.t2tb1 (tptp.tb2t1 J)) J)))) (let ((_let_5 (forall ((A tptp.ty) (A1 tptp.uni) (I Int)) (= (tptp.get2 A A1 I) (tptp.get A tptp.int (tptp.elts A A1) (tptp.t2tb I)))))) (let ((_let_6 (forall ((A tptp.ty) (U Int) (U1 tptp.uni)) (=> (tptp.sort1 (tptp.map tptp.int A) U1) (= (tptp.elts A (tptp.mk_array1 A U U1)) U1))))) (let ((_let_7 (tptp.t2tb2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3))) (let ((_let_8 (+ 2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4))) (let ((_let_9 (tptp.mk_array1 tptp.int _let_8 _let_7))) (let ((_let_10 (tptp.tb2t1 _let_9))) (let ((_let_11 (tptp.t2tb1 _let_10))) (let ((_let_12 (= _let_9 _let_11))) (let ((_let_13 (= _let_7 (tptp.elts tptp.int _let_9)))) (let ((_let_14 (tptp.get2 tptp.int _let_11 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_72))) (let ((_let_15 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 (tptp.tb2t _let_14)))) (let ((_let_16 (tptp.t2tb SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_72))) (let ((_let_17 (= _let_14 (tptp.get tptp.int tptp.int (tptp.elts tptp.int _let_11) _let_16)))) (let ((_let_18 (tptp.tb2t (tptp.get tptp.int tptp.int _let_7 _let_16)))) (let ((_let_19 (* (- 1) _let_18))) (let ((_let_20 (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 _let_19))) (let ((_let_21 (>= _let_20 1))) (let ((_let_22 (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (* (- 1) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8)))) (let ((_let_23 (>= _let_22 1))) (let ((_let_24 (forall ((J tptp.uni)) (= J (tptp.t2tb1 (tptp.tb2t1 J)))))) (let ((_let_25 (EQ_RESOLVE (ASSUME :args (_let_4)) (MACRO_SR_EQ_INTRO :args (_let_4 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_26 (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_25 :args (_let_9 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((tptp.tb2t1 J)))) :args (_let_24))) _let_25 :args (_let_12 false _let_24)))) (let ((_let_27 (tptp.sort1 (tptp.map tptp.int tptp.int) _let_7))) (let ((_let_28 (not _let_27))) (let ((_let_29 (or _let_28 _let_13))) (let ((_let_30 (forall ((A tptp.ty) (U Int) (U1 tptp.uni)) (or (not (tptp.sort1 (tptp.map tptp.int A) U1)) (= U1 (tptp.elts A (tptp.mk_array1 A U U1))))))) (let ((_let_31 (EQ_RESOLVE (ASSUME :args (_let_6)) (MACRO_SR_EQ_INTRO :args (_let_6 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_32 (_let_2))) (let ((_let_33 (ASSUME :args _let_32))) (let ((_let_34 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_29)) :args ((or _let_28 _let_13 (not _let_29)))) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_33 :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((tptp.t2tb2 X)))) :args _let_32)) _let_33 :args (_let_27 false _let_2)) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_31 :args (tptp.int _let_8 _let_7 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((tptp.mk_array1 A U U1)))) :args (_let_30))) _let_31 :args (_let_29 false _let_30)) :args (_let_13 false _let_27 false _let_29)))) (let ((_let_35 (not (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 (tptp.tb2t (tptp.get2 tptp.int _let_11 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_73)))))) (let ((_let_36 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_72 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_73))) (let ((_let_37 (not (>= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_73 0)))) (let ((_let_38 (not _let_15))) (let ((_let_39 (>= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (* (- 1) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_72)) (- 1)))) (let ((_let_40 (not _let_39))) (let ((_let_41 (>= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_72 0))) (let ((_let_42 (not _let_41))) (let ((_let_43 (or _let_42 _let_40 _let_38 _let_37 (not (>= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (* (- 1) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_73)) (- 1))) _let_36 _let_35))) (let ((_let_44 (forall ((I Int) (BOUND_VARIABLE_1321 Int)) (let ((_let_1 (tptp.t2tb1 (tptp.tb2t1 (tptp.mk_array1 tptp.int (+ 2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4) (tptp.t2tb2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3)))))) (let ((_let_2 (* (- 1) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4))) (or (not (>= I 0)) (>= (+ I _let_2) 2) (not (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 (tptp.tb2t (tptp.get2 tptp.int _let_1 I)))) (not (>= BOUND_VARIABLE_1321 0)) (>= (+ BOUND_VARIABLE_1321 _let_2) 2) (= I BOUND_VARIABLE_1321) (not (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 (tptp.tb2t (tptp.get2 tptp.int _let_1 BOUND_VARIABLE_1321)))))))))) (let ((_let_45 (not _let_43))) (let ((_let_46 (not _let_44))) (let ((_let_47 (tptp.appear_twice1 _let_10 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 _let_8))) (let ((_let_48 (= _let_47 _let_46))) (let ((_let_49 (forall ((A tptp.array_int) (V Int) (U Int)) (= (tptp.appear_twice1 A V U) (not (forall ((I Int) (BOUND_VARIABLE_1321 Int)) (let ((_let_1 (tptp.t2tb1 A))) (or (not (>= I 0)) (not (>= (+ U (* (- 1) I)) 1)) (not (= V (tptp.tb2t (tptp.get2 tptp.int _let_1 I)))) (not (>= BOUND_VARIABLE_1321 0)) (not (>= (+ U (* (- 1) BOUND_VARIABLE_1321)) 1)) (= I BOUND_VARIABLE_1321) (not (= V (tptp.tb2t (tptp.get2 tptp.int _let_1 BOUND_VARIABLE_1321)))))))))))) (let ((_let_50 (EQ_RESOLVE (ASSUME :args (_let_3)) (MACRO_SR_EQ_INTRO :args (_let_3 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_51 (tptp.appear_twice1 _let_10 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6 _let_8))) (let ((_let_52 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7 (- 1)))) (let ((_let_53 (forall ((V Int)) (let ((_let_1 (+ 2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4))) (or (not (>= V 0)) (>= (+ V (* (- 1) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4)) 0) (not (tptp.appear_twice1 (tptp.tb2t1 (tptp.mk_array1 tptp.int _let_1 (tptp.t2tb2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3))) V _let_1))))))) (let ((_let_54 (not _let_53))) (let ((_let_55 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6 (- 1)))) (let ((_let_56 (and _let_55 _let_54))) (let ((_let_57 (not (tptp.appear_twice1 _let_10 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7 _let_8)))) (let ((_let_58 (not _let_52))) (let ((_let_59 (not _let_51))) (let ((_let_60 (not _let_55))) (let ((_let_61 (and _let_60 _let_59))) (let ((_let_62 (and _let_55 _let_58))) (let ((_let_63 (not _let_47))) (let ((_let_64 (not (tptp.appear_twice1 _let_10 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_9 _let_8)))) (let ((_let_65 (not (>= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (- 1))))) (let ((_let_66 (not (>= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 0)))) (let ((_let_67 (forall ((I Int)) (let ((_let_1 (tptp.tb2t (tptp.get tptp.int tptp.int (tptp.t2tb2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3) (tptp.t2tb I))))) (or (not (>= I 0)) (>= (+ I (* (- 1) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4)) 2) (and (>= _let_1 0) (>= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (* (- 1) _let_1)) 1))))))) (let ((_let_68 (not _let_67))) (let ((_let_69 (not (>= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 2)))) (let ((_let_70 (not (>= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (- 2))))) (let ((_let_71 (or _let_70 _let_69 _let_68 _let_66 _let_65 (not (forall ((V Int) (BOUND_VARIABLE_1507 Int)) (let ((_let_1 (* (- 1) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4))) (let ((_let_2 (= tptp.true1 (tptp.tb2t3 (tptp.get tptp.bool tptp.int (tptp.t2tb4 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_5) (tptp.t2tb V)))))) (or (not (>= V 0)) (>= (+ V _let_1) 0) (and _let_2 (not (forall ((J Int)) (or (not (>= J 0)) (>= (+ J (* (- 1) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4)) 2) (not (= V (tptp.tb2t (tptp.get tptp.int tptp.int (tptp.t2tb2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3) (tptp.t2tb J))))))))) (and (not _let_2) (or (not (>= BOUND_VARIABLE_1507 0)) (>= (+ BOUND_VARIABLE_1507 _let_1) 2) (not (= V (tptp.tb2t (tptp.get tptp.int tptp.int (tptp.t2tb2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3) (tptp.t2tb BOUND_VARIABLE_1507)))))))))))) _let_64 _let_63 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_9) _let_62 _let_61 (and _let_58 (or _let_57 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7))) _let_56 (and _let_52 (not (forall ((V Int)) (let ((_let_1 (+ 2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4))) (or (not (>= V 0)) (>= (+ V (* (- 1) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4)) 0) (= V SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6) (not (tptp.appear_twice1 (tptp.tb2t1 (tptp.mk_array1 tptp.int _let_1 (tptp.t2tb2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3))) V _let_1))))))) _let_51))) (let ((_let_72 (forall ((A1 tptp.map_int_int) (N Int) (BOUND_VARIABLE_1649 tptp.map_int_bool) (BOUND_VARIABLE_1627 Int) (BOUND_VARIABLE_1625 Int) (BOUND_VARIABLE_1617 Int) (BOUND_VARIABLE_1615 Int)) (let ((_let_1 (+ 2 N))) (let ((_let_2 (tptp.tb2t1 (tptp.mk_array1 tptp.int _let_1 (tptp.t2tb2 A1))))) (let ((_let_3 (tptp.appear_twice1 _let_2 BOUND_VARIABLE_1627 _let_1))) (let ((_let_4 (= BOUND_VARIABLE_1625 (- 1)))) (let ((_let_5 (= BOUND_VARIABLE_1627 (- 1)))) (let ((_let_6 (not _let_4))) (or (not (>= N (- 2))) (not (>= N 2)) (not (forall ((I Int)) (let ((_let_1 (tptp.tb2t (tptp.get tptp.int tptp.int (tptp.t2tb2 A1) (tptp.t2tb I))))) (or (not (>= I 0)) (not (>= (+ N (* (- 1) I)) (- 1))) (and (>= _let_1 0) (>= (+ N (* (- 1) _let_1)) 1)))))) (not (>= N 0)) (not (>= N (- 1))) (not (forall ((V Int) (BOUND_VARIABLE_1507 Int)) (let ((_let_1 (= tptp.true1 (tptp.tb2t3 (tptp.get tptp.bool tptp.int (tptp.t2tb4 BOUND_VARIABLE_1649) (tptp.t2tb V)))))) (or (not (>= V 0)) (not (>= (+ N (* (- 1) V)) 1)) (and _let_1 (not (forall ((J Int)) (or (not (>= J 0)) (not (>= (+ N (* (- 1) J)) (- 1))) (not (= V (tptp.tb2t (tptp.get tptp.int tptp.int (tptp.t2tb2 A1) (tptp.t2tb J))))))))) (and (not _let_1) (or (not (>= BOUND_VARIABLE_1507 0)) (not (>= (+ N (* (- 1) BOUND_VARIABLE_1507)) (- 1))) (not (= V (tptp.tb2t (tptp.get tptp.int tptp.int (tptp.t2tb2 A1) (tptp.t2tb BOUND_VARIABLE_1507))))))))))) (not (tptp.appear_twice1 _let_2 BOUND_VARIABLE_1615 _let_1)) (not (tptp.appear_twice1 _let_2 BOUND_VARIABLE_1617 _let_1)) (= BOUND_VARIABLE_1615 BOUND_VARIABLE_1617) (and _let_5 _let_6) (and (not _let_5) (not _let_3)) (and _let_6 (or (not (tptp.appear_twice1 _let_2 BOUND_VARIABLE_1625 _let_1)) (= BOUND_VARIABLE_1625 BOUND_VARIABLE_1627))) (and _let_5 (not (forall ((V Int)) (let ((_let_1 (+ 2 N))) (or (not (>= V 0)) (not (>= (+ N (* (- 1) V)) 1)) (not (tptp.appear_twice1 (tptp.tb2t1 (tptp.mk_array1 tptp.int _let_1 (tptp.t2tb2 A1))) V _let_1))))))) (and _let_4 (not (forall ((V Int)) (let ((_let_1 (+ 2 N))) (or (not (>= V 0)) (not (>= (+ N (* (- 1) V)) 1)) (= V BOUND_VARIABLE_1627) (not (tptp.appear_twice1 (tptp.tb2t1 (tptp.mk_array1 tptp.int _let_1 (tptp.t2tb2 A1))) V _let_1))))))) _let_3)))))))))) (let ((_let_73 (not _let_71))) (let ((_let_74 (EQ_RESOLVE (ASSUME :args (_let_1)) (MACRO_SR_EQ_INTRO :args (_let_1 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_75 (or))) (let ((_let_76 (not _let_72))) (let ((_let_77 (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (EQ_RESOLVE (SCOPE (SKOLEMIZE _let_74) :args (_let_76)) (REWRITE :args ((=> _let_76 (not (or _let_70 _let_69 (not (forall ((I Int)) (let ((_let_1 (tptp.tb2t (tptp.get tptp.int tptp.int (tptp.t2tb2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3) (tptp.t2tb I))))) (or (not (>= I 0)) (not (>= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (* (- 1) I)) (- 1))) (and (>= _let_1 0) (>= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (* (- 1) _let_1)) 1)))))) _let_66 _let_65 (not (forall ((V Int) (BOUND_VARIABLE_1507 Int)) (let ((_let_1 (= tptp.true1 (tptp.tb2t3 (tptp.get tptp.bool tptp.int (tptp.t2tb4 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_5) (tptp.t2tb V)))))) (or (not (>= V 0)) (not (>= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (* (- 1) V)) 1)) (and _let_1 (not (forall ((J Int)) (or (not (>= J 0)) (not (>= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (* (- 1) J)) (- 1))) (not (= V (tptp.tb2t (tptp.get tptp.int tptp.int (tptp.t2tb2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3) (tptp.t2tb J))))))))) (and (not _let_1) (or (not (>= BOUND_VARIABLE_1507 0)) (not (>= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (* (- 1) BOUND_VARIABLE_1507)) (- 1))) (not (= V (tptp.tb2t (tptp.get tptp.int tptp.int (tptp.t2tb2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3) (tptp.t2tb BOUND_VARIABLE_1507))))))))))) _let_64 _let_63 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_9 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8) _let_62 _let_61 (and _let_58 (or _let_57 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_7 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6))) (and _let_55 (not (forall ((V Int)) (let ((_let_1 (+ 2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4))) (or (not (>= V 0)) (not (>= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (* (- 1) V)) 1)) (not (tptp.appear_twice1 (tptp.tb2t1 (tptp.mk_array1 tptp.int _let_1 (tptp.t2tb2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3))) V _let_1))))))) (and _let_52 (not (forall ((V Int)) (let ((_let_1 (+ 2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4))) (or (not (>= V 0)) (not (>= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4 (* (- 1) V)) 1)) (= V SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_6) (not (tptp.appear_twice1 (tptp.tb2t1 (tptp.mk_array1 tptp.int _let_1 (tptp.t2tb2 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_3))) V _let_1))))))) _let_51))))))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_76) _let_72))) (REFL :args (_let_73)) :args _let_75)) _let_74 :args (_let_73 true _let_72)))) (let ((_let_78 (REFL :args (_let_71)))) (let ((_let_79 (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_71 7)) (CONG _let_78 (MACRO_SR_PRED_INTRO :args ((= (not _let_63) _let_47))) :args _let_75)) :args ((or _let_47 _let_71))) _let_77 :args (_let_47 true _let_71)))) (let ((_let_80 (* (- 1) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_4))) (let ((_let_81 (_let_46))) (let ((_let_82 (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (EQ_RESOLVE (SCOPE (SKOLEMIZE (ASSUME :args _let_81)) :args _let_81) (REWRITE :args ((=> _let_46 (not (or _let_42 (>= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_72 _let_80) 2) _let_38 _let_37 (>= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_73 _let_80) 2) _let_36 _let_35))))))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_46) _let_44))) (REFL :args (_let_45)) :args _let_75)) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_EQUIV_POS1 :args (_let_48)) :args ((or _let_63 _let_46 (not _let_48)))) _let_79 (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE _let_50 :args (_let_10 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 _let_8 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((tptp.appear_twice1 A V U)))) :args (_let_49)))) _let_50 :args (_let_48 false _let_49)) :args (_let_46 false _let_47 false _let_48)) :args (_let_45 true _let_44)))) (let ((_let_83 (REFL :args (_let_43)))) (let ((_let_84 (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_43 2)) (CONG _let_83 (MACRO_SR_PRED_INTRO :args ((= (not _let_38) _let_15))) :args _let_75)) :args ((or _let_15 _let_43))) _let_82 :args (_let_15 true _let_43)))) (let ((_let_85 (_let_5))) (let ((_let_86 (ASSUME :args _let_85))) (let ((_let_87 (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE _let_86 :args (tptp.int _let_11 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_72 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((tptp.get2 A A1 I)))) :args _let_85)) _let_86 :args (_let_17 false _let_5)))) (let ((_let_88 (>= _let_18 0))) (let ((_let_89 (and _let_88 _let_21))) (let ((_let_90 (or _let_42 _let_40 _let_89))) (let ((_let_91 (_let_67))) (let ((_let_92 (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_90)) :args ((or _let_42 _let_40 _let_89 (not _let_90)))) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_43 0)) (CONG _let_83 (MACRO_SR_PRED_INTRO :args ((= (not _let_42) _let_41))) :args _let_75)) :args ((or _let_41 _let_43))) _let_82 :args (_let_41 true _let_43)) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_43 1)) (CONG _let_83 (MACRO_SR_PRED_INTRO :args ((= (not _let_40) _let_39))) :args _let_75)) :args ((or _let_39 _let_43))) _let_82 :args (_let_39 true _let_43)) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE (ASSUME :args _let_91) :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_72 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((tptp.t2tb I)))) :args _let_91))) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_71 2)) (CONG _let_78 (MACRO_SR_PRED_INTRO :args ((= (not _let_68) _let_67))) :args _let_75)) :args ((or _let_67 _let_71))) _let_77 :args (_let_67 true _let_71)) :args (_let_90 false _let_67)) :args (_let_89 false _let_41 false _let_39 false _let_90)))) (let ((_let_93 (not _let_89))) (let ((_let_94 (not _let_23))) (let ((_let_95 (>= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 0))) (let ((_let_96 (not _let_95))) (let ((_let_97 (or _let_96 _let_94 _let_63))) (let ((_let_98 (_let_61))) (let ((_let_99 (_let_56))) (let ((_let_100 (_let_53))) (let ((_let_101 (= SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 _let_18))) (let ((_let_102 (and _let_13 _let_12 _let_15 _let_17))) (let ((_let_103 (= _let_18 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8))) (let ((_let_104 (_let_103))) (let ((_let_105 (ASSUME :args _let_104))) (let ((_let_106 (ASSUME :args (_let_15)))) (let ((_let_107 (ASSUME :args (_let_17)))) (let ((_let_108 (ASSUME :args (_let_12)))) (let ((_let_109 (REFL :args (tptp.int)))) (let ((_let_110 (ASSUME :args (_let_13)))) (let ((_let_111 (MODUS_PONENS (AND_INTRO _let_106 _let_107 _let_108 _let_110) (SCOPE (TRANS (CONG (TRANS (CONG _let_109 _let_109 (TRANS (SYMM (SYMM _let_110)) (CONG _let_109 (SYMM (SYMM _let_108)) :args (APPLY_UF tptp.elts))) (REFL :args (_let_16)) :args (APPLY_UF tptp.get)) (SYMM _let_107)) :args (APPLY_UF tptp.tb2t)) (SYMM _let_106)) :args (_let_15 _let_17 _let_12 _let_13))))) (let ((_let_112 (not _let_88))) (let ((_let_113 ((or _let_112 (not _let_103) _let_95)))) (let ((_let_114 (false))) (let ((_let_115 (MACRO_SR_PRED_TRANSFORM _let_105 :args ((= (+ SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 _let_19) 0))))) (let ((_let_116 (not _let_21))) (let ((_let_117 (not _let_17))) (let ((_let_118 (not _let_12))) (let ((_let_119 (not _let_13))) (let ((_let_120 (_let_116))) (let ((_let_121 (_let_21))) (let ((_let_122 (ASSUME :args (_let_94)))) (let ((_let_123 (ASSUME :args _let_121))) (SCOPE (SCOPE (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (NOT_AND (MACRO_SR_PRED_TRANSFORM (SCOPE (AND_INTRO _let_122 _let_111 _let_123) :args (_let_13 _let_12 _let_94 _let_15 _let_17 _let_21)) (SCOPE (CONTRA _let_123 (MACRO_SR_PRED_TRANSFORM (MACRO_SR_PRED_TRANSFORM (SCOPE (MACRO_SR_PRED_TRANSFORM (MACRO_ARITH_SCALE_SUM_UB _let_123 _let_115 (MACRO_SR_PRED_TRANSFORM _let_122 :args ((< _let_22 1))) :args ((- 1.0) 1.0 1.0)) :args _let_114) :args _let_121) :args ((< _let_20 1))) :args _let_120)) :args (_let_94 _let_103 _let_21)) :args ((not (and _let_13 _let_12 _let_94 _let_15 _let_17 _let_21)) SB_LITERAL))) (CONG (REFL :args (_let_119)) (REFL :args (_let_118)) (MACRO_SR_PRED_INTRO :args ((= (not _let_94) _let_23))) (REFL :args (_let_38)) (REFL :args (_let_117)) (REFL :args _let_120) :args _let_75)) :args ((or _let_23 _let_119 _let_118 _let_38 _let_117 _let_116))) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_97)) :args ((or _let_63 _let_96 _let_94 (not _let_97)))) _let_79 (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (MACRO_SR_PRED_TRANSFORM (NOT_AND (SCOPE (MACRO_SR_PRED_TRANSFORM (MACRO_ARITH_SCALE_SUM_UB (MACRO_SR_PRED_TRANSFORM (ASSUME :args (_let_96)) :args ((< SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 0))) (ASSUME :args (_let_88)) _let_115 :args (1.0 (- 1.0) (- 1.0))) :args _let_114) :args (_let_88 _let_103 _let_96))) :args _let_113) (REWRITE :args _let_113)) :args ((or _let_95 _let_112 (not _let_101)))) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_AND_POS :args (_let_89 0)) :args ((or _let_88 _let_93))) _let_92 :args (_let_88 false _let_89)) (MACRO_RESOLUTION_TRUST (RESOLUTION (CNF_AND_NEG :args (_let_102)) (IMPLIES_ELIM (SCOPE (MODUS_PONENS _let_111 (SCOPE (SYMM _let_105) :args _let_104)) :args (_let_13 _let_12 _let_15 _let_17))) :args (true _let_102)) _let_34 _let_26 _let_84 _let_87 :args (_let_101 false _let_13 false _let_12 false _let_15 false _let_17)) :args (_let_95 false _let_88 false _let_101)) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE (ASSUME :args _let_100) :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((not (= (tptp.appear_twice1 _let_10 V _let_8) false))))) :args _let_100))) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_AND_NEG :args _let_99) (CONG (REFL :args _let_99) (REFL :args (_let_60)) (MACRO_SR_PRED_INTRO :args ((= (not _let_54) _let_53))) :args _let_75)) :args ((or _let_60 _let_53 _let_56))) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_AND_NEG :args _let_98) (CONG (REFL :args _let_98) (MACRO_SR_PRED_INTRO :args ((= (not _let_60) _let_55))) (MACRO_SR_PRED_INTRO :args ((= (not _let_59) _let_51))) :args _let_75)) :args ((or _let_55 _let_51 _let_61))) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_NEG :args (_let_71 14)) :args ((or _let_59 _let_71))) _let_77 :args (_let_59 true _let_71)) (MACRO_RESOLUTION_TRUST (CNF_OR_NEG :args (_let_71 10)) _let_77 :args ((not _let_61) true _let_71)) :args (_let_55 true _let_51 true _let_61)) (MACRO_RESOLUTION_TRUST (CNF_OR_NEG :args (_let_71 12)) _let_77 :args ((not _let_56) true _let_71)) :args (_let_53 false _let_55 true _let_56)) :args (_let_97 false _let_53)) :args (_let_94 false _let_47 false _let_95 false _let_97)) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_AND_POS :args (_let_89 1)) :args ((or _let_21 _let_93))) _let_92 :args (_let_21 false _let_89)) _let_87 _let_84 _let_34 _let_26 :args (false true _let_23 false _let_21 false _let_17 false _let_15 false _let_13 false _let_12)) :args ((forall ((A tptp.ty)) (tptp.sort1 A (tptp.witness1 A))) (forall ((A tptp.ty) (X tptp.bool1) (X1 tptp.uni) (X2 tptp.uni)) (tptp.sort1 A (tptp.match_bool1 A X X1 X2))) (forall ((A tptp.ty) (Z tptp.uni) (Z1 tptp.uni)) (=> (tptp.sort1 A Z) (= (tptp.match_bool1 A tptp.true1 Z Z1) Z))) (forall ((A tptp.ty) (Z tptp.uni) (Z1 tptp.uni)) (=> (tptp.sort1 A Z1) (= (tptp.match_bool1 A tptp.false1 Z Z1) Z1))) (not (= tptp.true1 tptp.false1)) (forall ((U tptp.bool1)) (or (= U tptp.true1) (= U tptp.false1))) (forall ((U tptp.tuple02)) (= U tptp.tuple03)) (forall ((X Int) (Y Int) (Z Int)) (=> (<= X Y) (=> (<= 0 Z) (<= (* X Z) (* Y Z))))) (forall ((A tptp.ty) (X tptp.uni)) (tptp.sort1 (tptp.ref A) (tptp.mk_ref A X))) (forall ((A tptp.ty) (X tptp.uni)) (tptp.sort1 A (tptp.contents A X))) (forall ((A tptp.ty) (U tptp.uni)) (=> (tptp.sort1 A U) (= (tptp.contents A (tptp.mk_ref A U)) U))) (forall ((A tptp.ty) (U tptp.uni)) (=> (tptp.sort1 (tptp.ref A) U) (= U (tptp.mk_ref A (tptp.contents A U))))) (forall ((A tptp.ty) (B tptp.ty) (X tptp.uni) (X1 tptp.uni)) (tptp.sort1 B (tptp.get B A X X1))) (forall ((A tptp.ty) (B tptp.ty) (X tptp.uni) (X1 tptp.uni) (X2 tptp.uni)) (tptp.sort1 (tptp.map A B) (tptp.set B A X X1 X2))) (forall ((A tptp.ty) (B tptp.ty) (M tptp.uni) (A1 tptp.uni) (A2 tptp.uni) (B1 tptp.uni)) (=> (tptp.sort1 B B1) (=> (= A1 A2) (= (tptp.get B A (tptp.set B A M A1 B1) A2) B1)))) (forall ((A tptp.ty) (B tptp.ty) (M tptp.uni) (A1 tptp.uni) (A2 tptp.uni)) (=> (tptp.sort1 A A1) (=> (tptp.sort1 A A2) (forall ((B1 tptp.uni)) (=> (not (= A1 A2)) (= (tptp.get B A (tptp.set B A M A1 B1) A2) (tptp.get B A M A2))))))) (forall ((A tptp.ty) (B tptp.ty) (X tptp.uni)) (tptp.sort1 (tptp.map A B) (tptp.const B A X))) (forall ((A tptp.ty) (B tptp.ty) (B1 tptp.uni) (A1 tptp.uni)) (=> (tptp.sort1 B B1) (= (tptp.get B A (tptp.const B A B1) A1) B1))) (forall ((A tptp.ty) (X Int) (X1 tptp.uni)) (tptp.sort1 (tptp.array A) (tptp.mk_array1 A X X1))) (forall ((A tptp.ty) (U Int) (U1 tptp.uni)) (= (tptp.length1 A (tptp.mk_array1 A U U1)) U)) (forall ((A tptp.ty) (X tptp.uni)) (tptp.sort1 (tptp.map tptp.int A) (tptp.elts A X))) _let_6 (forall ((A tptp.ty) (U tptp.uni)) (= U (tptp.mk_array1 A (tptp.length1 A U) (tptp.elts A U)))) (forall ((A tptp.ty) (X tptp.uni) (X1 Int)) (tptp.sort1 A (tptp.get2 A X X1))) (forall ((X Int)) (tptp.sort1 tptp.int (tptp.t2tb X))) (forall ((I Int)) (= (tptp.tb2t (tptp.t2tb I)) I)) (forall ((J tptp.uni)) (= (tptp.t2tb (tptp.tb2t J)) J)) _let_5 (forall ((A tptp.ty) (X tptp.uni) (X1 Int) (X2 tptp.uni)) (tptp.sort1 (tptp.array A) (tptp.set2 A X X1 X2))) (forall ((A tptp.ty) (A1 tptp.uni) (I Int) (V tptp.uni)) (= (tptp.set2 A A1 I V) (tptp.mk_array1 A (tptp.length1 A A1) (tptp.set A tptp.int (tptp.elts A A1) (tptp.t2tb I) V)))) (forall ((A tptp.ty) (X Int) (X1 tptp.uni)) (tptp.sort1 (tptp.array A) (tptp.make1 A X X1))) (forall ((A tptp.ty) (N Int) (V tptp.uni)) (= (tptp.make1 A N V) (tptp.mk_array1 A N (tptp.const A tptp.int V)))) (forall ((X tptp.array_int)) (tptp.sort1 (tptp.array tptp.int) (tptp.t2tb1 X))) (forall ((I tptp.array_int)) (= (tptp.tb2t1 (tptp.t2tb1 I)) I)) _let_4 _let_3 _let_2 (forall ((I tptp.map_int_int)) (= (tptp.tb2t2 (tptp.t2tb2 I)) I)) (forall ((J tptp.uni)) (= (tptp.t2tb2 (tptp.tb2t2 J)) J)) (forall ((X tptp.bool1)) (tptp.sort1 tptp.bool (tptp.t2tb3 X))) (forall ((I tptp.bool1)) (= (tptp.tb2t3 (tptp.t2tb3 I)) I)) (forall ((J tptp.uni)) (=> (tptp.sort1 tptp.bool J) (= (tptp.t2tb3 (tptp.tb2t3 J)) J))) (forall ((X tptp.map_int_bool)) (tptp.sort1 (tptp.map tptp.int tptp.bool) (tptp.t2tb4 X))) (forall ((I tptp.map_int_bool)) (= (tptp.tb2t4 (tptp.t2tb4 I)) I)) (forall ((J tptp.uni)) (=> (tptp.sort1 (tptp.map tptp.int tptp.bool) J) (= (tptp.t2tb4 (tptp.tb2t4 J)) J))) _let_1 true))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
% 15.48/15.73  )
% 15.48/15.73  % SZS output end Proof for SWW599_2
% 15.48/15.73  % cvc5---1.0.5 exiting
% 15.48/15.73  % cvc5---1.0.5 exiting
%------------------------------------------------------------------------------