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
%------------------------------------------------------------------------------