TSTP Solution File: SEV507^1 by Duper---1.0
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : Duper---1.0
% Problem : SEV507^1 : TPTP v8.1.2. Released v7.0.0.
% Transfm : none
% Format : tptp:raw
% Command : duper %s
% Computer : n005.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 19:25:09 EDT 2023
% Result : Theorem 3.48s 3.68s
% Output : Proof 3.48s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.13 % Problem : SEV507^1 : TPTP v8.1.2. Released v7.0.0.
% 0.00/0.14 % Command : duper %s
% 0.15/0.36 % Computer : n005.cluster.edu
% 0.15/0.36 % Model : x86_64 x86_64
% 0.15/0.36 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.15/0.36 % Memory : 8042.1875MB
% 0.15/0.36 % OS : Linux 3.10.0-693.el7.x86_64
% 0.15/0.36 % CPULimit : 300
% 0.15/0.36 % WCLimit : 300
% 0.15/0.36 % DateTime : Thu Aug 24 03:39:53 EDT 2023
% 0.15/0.36 % CPUTime :
% 3.48/3.68 SZS status Theorem for theBenchmark.p
% 3.48/3.68 SZS output start Proof for theBenchmark.p
% 3.48/3.68 Clause #0 (by assumption #[]): Eq
% 3.48/3.68 (∀ (A A0 A1 : Type) (A2 : A1 → A1 → A1),
% 3.48/3.68 «const/iterate/monoidal» A1 A2 →
% 3.48/3.68 And
% 3.48/3.68 (∀ (A3 : A → A1),
% 3.48/3.68 Eq («const/iterate/iterate» A A1 A2 («const/sets/EMPTY» A) A3) («const/iterate/neutral» A1 A2))
% 3.48/3.68 (∀ (A3 : A0 → A1) (A4 : A0) (A5 : A0 → Prop),
% 3.48/3.68 «const/sets/FINITE» A0 A5 →
% 3.48/3.68 Eq («const/iterate/iterate» A0 A1 A2 («const/sets/INSERT» A0 A4 A5) A3)
% 3.48/3.68 («const/class/COND» A1 («const/sets/IN» A0 A4 A5) («const/iterate/iterate» A0 A1 A2 A5 A3)
% 3.48/3.68 (A2 (A3 A4) («const/iterate/iterate» A0 A1 A2 A5 A3)))))
% 3.48/3.68 True
% 3.48/3.68 Clause #1 (by assumption #[]): Eq («const/iterate/monoidal» «type/realax/real» «const/realax/real_add») True
% 3.48/3.68 Clause #2 (by assumption #[]): Eq (∀ (A : Type), Eq («const/iterate/sum» A) («const/iterate/iterate» A «type/realax/real» «const/realax/real_add»))
% 3.48/3.68 True
% 3.48/3.68 Clause #3 (by assumption #[]): Eq
% 3.48/3.68 (Eq («const/iterate/neutral» «type/realax/real» «const/realax/real_add»)
% 3.48/3.68 («const/realax/real_of_num» («const/nums/NUMERAL» «const/nums/_0»)))
% 3.48/3.68 True
% 3.48/3.68 Clause #4 (by assumption #[]): Eq
% 3.48/3.68 (Not
% 3.48/3.68 (∀ (A : Type) (A0 : A → «type/realax/real»),
% 3.48/3.68 Eq («const/iterate/sum» A («const/sets/EMPTY» A) A0)
% 3.48/3.68 («const/realax/real_of_num» («const/nums/NUMERAL» «const/nums/_0»))))
% 3.48/3.68 True
% 3.48/3.68 Clause #5 (by clausification #[3]): Eq («const/iterate/neutral» «type/realax/real» «const/realax/real_add»)
% 3.48/3.68 («const/realax/real_of_num» («const/nums/NUMERAL» «const/nums/_0»))
% 3.48/3.68 Clause #6 (by clausification #[2]): ∀ (a : Type),
% 3.48/3.68 Eq (Eq («const/iterate/sum» a) («const/iterate/iterate» a «type/realax/real» «const/realax/real_add»)) True
% 3.48/3.68 Clause #7 (by clausification #[6]): ∀ (a : Type), Eq («const/iterate/sum» a) («const/iterate/iterate» a «type/realax/real» «const/realax/real_add»)
% 3.48/3.68 Clause #9 (by argument congruence #[7]): ∀ (a : Type) (a_1 : a → Prop) (a_2 : a → «type/realax/real»),
% 3.48/3.68 Eq («const/iterate/sum» a a_1 a_2) («const/iterate/iterate» a «type/realax/real» «const/realax/real_add» a_1 a_2)
% 3.48/3.68 Clause #10 (by clausification #[0]): ∀ (a : Type),
% 3.48/3.68 Eq
% 3.48/3.68 (∀ (A0 A1 : Type) (A2 : A1 → A1 → A1),
% 3.48/3.68 «const/iterate/monoidal» A1 A2 →
% 3.48/3.68 And
% 3.48/3.68 (∀ (A3 : a → A1),
% 3.48/3.68 Eq («const/iterate/iterate» a A1 A2 («const/sets/EMPTY» a) A3) («const/iterate/neutral» A1 A2))
% 3.48/3.68 (∀ (A3 : A0 → A1) (A4 : A0) (A5 : A0 → Prop),
% 3.48/3.68 «const/sets/FINITE» A0 A5 →
% 3.48/3.68 Eq («const/iterate/iterate» A0 A1 A2 («const/sets/INSERT» A0 A4 A5) A3)
% 3.48/3.68 («const/class/COND» A1 («const/sets/IN» A0 A4 A5) («const/iterate/iterate» A0 A1 A2 A5 A3)
% 3.48/3.68 (A2 (A3 A4) («const/iterate/iterate» A0 A1 A2 A5 A3)))))
% 3.48/3.68 True
% 3.48/3.68 Clause #11 (by clausification #[10]): ∀ (a a_1 : Type),
% 3.48/3.68 Eq
% 3.48/3.68 (∀ (A1 : Type) (A2 : A1 → A1 → A1),
% 3.48/3.68 «const/iterate/monoidal» A1 A2 →
% 3.48/3.68 And
% 3.48/3.68 (∀ (A3 : a → A1),
% 3.48/3.68 Eq («const/iterate/iterate» a A1 A2 («const/sets/EMPTY» a) A3) («const/iterate/neutral» A1 A2))
% 3.48/3.68 (∀ (A3 : a_1 → A1) (A4 : a_1) (A5 : a_1 → Prop),
% 3.48/3.68 «const/sets/FINITE» a_1 A5 →
% 3.48/3.68 Eq («const/iterate/iterate» a_1 A1 A2 («const/sets/INSERT» a_1 A4 A5) A3)
% 3.48/3.68 («const/class/COND» A1 («const/sets/IN» a_1 A4 A5) («const/iterate/iterate» a_1 A1 A2 A5 A3)
% 3.48/3.68 (A2 (A3 A4) («const/iterate/iterate» a_1 A1 A2 A5 A3)))))
% 3.48/3.68 True
% 3.48/3.68 Clause #12 (by clausification #[11]): ∀ (a a_1 a_2 : Type),
% 3.48/3.68 Eq
% 3.48/3.68 (∀ (A2 : a → a → a),
% 3.48/3.68 «const/iterate/monoidal» a A2 →
% 3.48/3.68 And
% 3.48/3.68 (∀ (A3 : a_1 → a),
% 3.48/3.68 Eq («const/iterate/iterate» a_1 a A2 («const/sets/EMPTY» a_1) A3) («const/iterate/neutral» a A2))
% 3.48/3.68 (∀ (A3 : a_2 → a) (A4 : a_2) (A5 : a_2 → Prop),
% 3.48/3.68 «const/sets/FINITE» a_2 A5 →
% 3.48/3.68 Eq («const/iterate/iterate» a_2 a A2 («const/sets/INSERT» a_2 A4 A5) A3)
% 3.48/3.70 («const/class/COND» a («const/sets/IN» a_2 A4 A5) («const/iterate/iterate» a_2 a A2 A5 A3)
% 3.48/3.70 (A2 (A3 A4) («const/iterate/iterate» a_2 a A2 A5 A3)))))
% 3.48/3.70 True
% 3.48/3.70 Clause #13 (by clausification #[12]): ∀ (a : Type) (a_1 : a → a → a) (a_2 a_3 : Type),
% 3.48/3.70 Eq
% 3.48/3.70 («const/iterate/monoidal» a a_1 →
% 3.48/3.70 And
% 3.48/3.70 (∀ (A3 : a_2 → a),
% 3.48/3.70 Eq («const/iterate/iterate» a_2 a a_1 («const/sets/EMPTY» a_2) A3) («const/iterate/neutral» a a_1))
% 3.48/3.70 (∀ (A3 : a_3 → a) (A4 : a_3) (A5 : a_3 → Prop),
% 3.48/3.70 «const/sets/FINITE» a_3 A5 →
% 3.48/3.70 Eq («const/iterate/iterate» a_3 a a_1 («const/sets/INSERT» a_3 A4 A5) A3)
% 3.48/3.70 («const/class/COND» a («const/sets/IN» a_3 A4 A5) («const/iterate/iterate» a_3 a a_1 A5 A3)
% 3.48/3.70 (a_1 (A3 A4) («const/iterate/iterate» a_3 a a_1 A5 A3)))))
% 3.48/3.70 True
% 3.48/3.70 Clause #14 (by clausification #[13]): ∀ (a : Type) (a_1 : a → a → a) (a_2 a_3 : Type),
% 3.48/3.70 Or (Eq («const/iterate/monoidal» a a_1) False)
% 3.48/3.70 (Eq
% 3.48/3.70 (And
% 3.48/3.70 (∀ (A3 : a_2 → a),
% 3.48/3.70 Eq («const/iterate/iterate» a_2 a a_1 («const/sets/EMPTY» a_2) A3) («const/iterate/neutral» a a_1))
% 3.48/3.70 (∀ (A3 : a_3 → a) (A4 : a_3) (A5 : a_3 → Prop),
% 3.48/3.70 «const/sets/FINITE» a_3 A5 →
% 3.48/3.70 Eq («const/iterate/iterate» a_3 a a_1 («const/sets/INSERT» a_3 A4 A5) A3)
% 3.48/3.70 («const/class/COND» a («const/sets/IN» a_3 A4 A5) («const/iterate/iterate» a_3 a a_1 A5 A3)
% 3.48/3.70 (a_1 (A3 A4) («const/iterate/iterate» a_3 a a_1 A5 A3)))))
% 3.48/3.70 True)
% 3.48/3.70 Clause #16 (by clausification #[14]): ∀ (a : Type) (a_1 : a → a → a) (a_2 : Type),
% 3.48/3.70 Or (Eq («const/iterate/monoidal» a a_1) False)
% 3.48/3.70 (Eq
% 3.48/3.70 (∀ (A3 : a_2 → a),
% 3.48/3.70 Eq («const/iterate/iterate» a_2 a a_1 («const/sets/EMPTY» a_2) A3) («const/iterate/neutral» a a_1))
% 3.48/3.70 True)
% 3.48/3.70 Clause #35 (by clausification #[4]): Eq
% 3.48/3.70 (∀ (A : Type) (A0 : A → «type/realax/real»),
% 3.48/3.70 Eq («const/iterate/sum» A («const/sets/EMPTY» A) A0)
% 3.48/3.70 («const/realax/real_of_num» («const/nums/NUMERAL» «const/nums/_0»)))
% 3.48/3.70 False
% 3.48/3.70 Clause #36 (by clausification #[35]): ∀ (a : Type),
% 3.48/3.70 Eq
% 3.48/3.70 (Not
% 3.48/3.70 (∀ (A0 : skS.0 0 a → «type/realax/real»),
% 3.48/3.70 Eq («const/iterate/sum» (skS.0 0 a) («const/sets/EMPTY» (skS.0 0 a)) A0)
% 3.48/3.70 («const/realax/real_of_num» («const/nums/NUMERAL» «const/nums/_0»))))
% 3.48/3.70 True
% 3.48/3.70 Clause #37 (by clausification #[36]): ∀ (a : Type),
% 3.48/3.70 Eq
% 3.48/3.70 (∀ (A0 : skS.0 0 a → «type/realax/real»),
% 3.48/3.70 Eq («const/iterate/sum» (skS.0 0 a) («const/sets/EMPTY» (skS.0 0 a)) A0)
% 3.48/3.70 («const/realax/real_of_num» («const/nums/NUMERAL» «const/nums/_0»)))
% 3.48/3.70 False
% 3.48/3.70 Clause #38 (by clausification #[37]): ∀ (a : Type) (a_1 : skS.0 0 a → «type/realax/real»),
% 3.48/3.70 Eq
% 3.48/3.70 (Not
% 3.48/3.70 (Eq («const/iterate/sum» (skS.0 0 a) («const/sets/EMPTY» (skS.0 0 a)) (skS.0 1 a a_1))
% 3.48/3.70 («const/realax/real_of_num» («const/nums/NUMERAL» «const/nums/_0»))))
% 3.48/3.70 True
% 3.48/3.70 Clause #39 (by clausification #[38]): ∀ (a : Type) (a_1 : skS.0 0 a → «type/realax/real»),
% 3.48/3.70 Eq
% 3.48/3.70 (Eq («const/iterate/sum» (skS.0 0 a) («const/sets/EMPTY» (skS.0 0 a)) (skS.0 1 a a_1))
% 3.48/3.70 («const/realax/real_of_num» («const/nums/NUMERAL» «const/nums/_0»)))
% 3.48/3.70 False
% 3.48/3.70 Clause #40 (by clausification #[39]): ∀ (a : Type) (a_1 : skS.0 0 a → «type/realax/real»),
% 3.48/3.70 Ne («const/iterate/sum» (skS.0 0 a) («const/sets/EMPTY» (skS.0 0 a)) (skS.0 1 a a_1))
% 3.48/3.70 («const/realax/real_of_num» («const/nums/NUMERAL» «const/nums/_0»))
% 3.48/3.70 Clause #41 (by forward demodulation #[40, 5]): ∀ (a : Type) (a_1 : skS.0 0 a → «type/realax/real»),
% 3.48/3.70 Ne («const/iterate/sum» (skS.0 0 a) («const/sets/EMPTY» (skS.0 0 a)) (skS.0 1 a a_1))
% 3.48/3.70 («const/iterate/neutral» «type/realax/real» «const/realax/real_add»)
% 3.48/3.70 Clause #42 (by clausification #[16]): ∀ (a : Type) (a_1 : a → a → a) (a_2 : Type) (a_3 : a_2 → a),
% 3.48/3.70 Or (Eq («const/iterate/monoidal» a a_1) False)
% 3.48/3.70 (Eq (Eq («const/iterate/iterate» a_2 a a_1 («const/sets/EMPTY» a_2) a_3) («const/iterate/neutral» a a_1)) True)
% 3.48/3.70 Clause #43 (by clausification #[42]): ∀ (a : Type) (a_1 : a → a → a) (a_2 : Type) (a_3 : a_2 → a),
% 3.48/3.70 Or (Eq («const/iterate/monoidal» a a_1) False)
% 3.48/3.70 (Eq («const/iterate/iterate» a_2 a a_1 («const/sets/EMPTY» a_2) a_3) («const/iterate/neutral» a a_1))
% 3.48/3.70 Clause #44 (by superposition #[43, 1]): ∀ (a : Type) (a_1 : a → «type/realax/real»),
% 3.48/3.70 Or
% 3.48/3.70 (Eq
% 3.48/3.70 («const/iterate/iterate» a «type/realax/real» (fun x x_1 => «const/realax/real_add» x x_1) («const/sets/EMPTY» a)
% 3.48/3.70 a_1)
% 3.48/3.70 («const/iterate/neutral» «type/realax/real» fun x x_1 => «const/realax/real_add» x x_1))
% 3.48/3.70 (Eq False True)
% 3.48/3.70 Clause #45 (by betaEtaReduce #[44]): ∀ (a : Type) (a_1 : a → «type/realax/real»),
% 3.48/3.70 Or
% 3.48/3.70 (Eq («const/iterate/iterate» a «type/realax/real» «const/realax/real_add» («const/sets/EMPTY» a) a_1)
% 3.48/3.70 («const/iterate/neutral» «type/realax/real» «const/realax/real_add»))
% 3.48/3.70 (Eq False True)
% 3.48/3.70 Clause #46 (by clausification #[45]): ∀ (a : Type) (a_1 : a → «type/realax/real»),
% 3.48/3.70 Eq («const/iterate/iterate» a «type/realax/real» «const/realax/real_add» («const/sets/EMPTY» a) a_1)
% 3.48/3.70 («const/iterate/neutral» «type/realax/real» «const/realax/real_add»)
% 3.48/3.70 Clause #47 (by superposition #[46, 9]): ∀ (a : Type) (a_1 : a → «type/realax/real»),
% 3.48/3.70 Eq («const/iterate/sum» a («const/sets/EMPTY» a) a_1)
% 3.48/3.70 («const/iterate/neutral» «type/realax/real» «const/realax/real_add»)
% 3.48/3.70 Clause #51 (by backward contextual literal cutting #[47, 41]): False
% 3.48/3.70 SZS output end Proof for theBenchmark.p
%------------------------------------------------------------------------------