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