zzhisthebest/LeanBenchmark huggingface dataset:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_27.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂))
  (fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁))
  (h_original_goal : Bornology.IsBounded (range fun n => (ADMM.x₁ E₂ F n, ADMM.x₂ E₁ F n, ADMM.y E₁ E₂ n))) :
  (range fun n => (ADMM.x₁ E₂ F n, ADMM.x₂ E₁ F n, ADMM.y E₁ E₂ n)) ⊆
    range (ADMM.x₁ E₂ F) ×ˢ range (ADMM.x₂ E₁ F) ×ˢ range (ADMM.y E₁ E₂) := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
inst✝ : Setting E₁ E₂ F admm admm_kkt
fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
⊢ Bornology.IsBounded (range fun n => (ADMM.x₁ E₂ F n, ADMM.x₂ E₁ F n, ADMM.y E₁ E₂ n))

Tactic:
apply IsBounded.subset
    apply IsBounded.prod (x₁_isBounded fullrank₁)
    apply IsBounded.prod (x₂_isBounded fullrank₂) y_isBounded

Tactic state after:
[case hs
 E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 inst✝ : Setting E₁ E₂ F admm admm_kkt
 fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
 fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
 ⊢ (range fun n => (ADMM.x₁ E₂ F n, ADMM.x₂ E₁ F n, ADMM.y E₁ E₂ n)) ⊆
     range (ADMM.x₁ E₂ F) ×ˢ range (ADMM.x₂ E₁ F) ×ˢ range (ADMM.y E₁ E₂)]
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_28.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} [inst_9 : Setting E₁ E₂ F admm admm_kkt] (c : ℝ)
  (hn : ∀ (n : ℕ), ∑ i ∈ Finset.range n, (Φ i.succ - Φ (i.succ + 1)) ≤ c)
  (h_original_goal : Summable fun n => Φ (n + 1) - Φ (n + 1 + 1)) (n : ℕ) :
  ∑ i ∈ Finset.range n, (Φ (i + 1) - Φ (i + 1 + 1)) ≤ c := sorry

Tactic state before:
case intro
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
inst✝ : Setting E₁ E₂ F admm admm_kkt
c : ℝ
hn : ∀ (n : ℕ), ∑ i ∈ Finset.range n, (Φ i.succ - Φ (i.succ + 1)) ≤ c
⊢ Summable fun n => Φ (n + 1) - Φ (n + 1 + 1)

Tactic:
apply summable_of_sum_range_le (c := c)
    intro n
    have : n + 1 > 0 := by linarith

Tactic state after:
[case intro.hf
 E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 inst✝ : Setting E₁ E₂ F admm admm_kkt
 c : ℝ
 hn : ∀ (n : ℕ), ∑ i ∈ Finset.range n, (Φ i.succ - Φ (i.succ + 1)) ≤ c
 n : ℕ
 this : n + 1 > 0
 ⊢ 0 ≤ Φ (n + 1) - Φ (n + 1 + 1),
 case intro.h
 E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 inst✝ : Setting E₁ E₂ F admm admm_kkt
 c : ℝ
 hn : ∀ (n : ℕ), ∑ i ∈ Finset.range n, (Φ i.succ - Φ (i.succ + 1)) ≤ c
 ⊢ ∀ (n : ℕ), ∑ i ∈ Finset.range n, (Φ (i + 1) - Φ (i + 1 + 1)) ≤ c]
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_29.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} :
  let φn := fun n => ‖(OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1) - ADMM.x₂ E₁ F n)‖ ^ 2;
  let φnsucc := fun n => φn (n + 1);
  ∀ (n : ℕ), (ADMM.τ E₁ E₂ F ⊓ (1 + ADMM.τ E₁ E₂ F - ADMM.τ E₁ E₂ F ^ 2)) * ADMM.ρ E₁ E₂ F * φnsucc n ≥ 0 := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
inst✝ : Setting E₁ E₂ F admm admm_kkt
φn : ℕ → ℝ := fun n => ‖(OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1) - ADMM.x₂ E₁ F n)‖ ^ 2
φnsucc : ℕ → ℝ := fun n => φn (n + 1)
n : ℕ
⊢ (ADMM.τ E₁ E₂ F ⊓ (1 + ADMM.τ E₁ E₂ F - ADMM.τ E₁ E₂ F ^ 2)) * ADMM.ρ E₁ E₂ F * φnsucc n ≥ 0

Tactic:
simp only [φnsucc, φn]
    rw [norm_comm A₂ (x₂ (n + 1 + 1)) (x₂ (n + 1))]
    apply Φ₁_nonneg (n + 1).toPNat'

Tactic state after:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_30.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} [inst_9 : Setting E₁ E₂ F admm admm_kkt]
  (h : Tendsto (fun n => ‖(OptProblem.A₁ E₂) (e₁ n) + (OptProblem.A₂ E₁) (e₂ n)‖ ^ 2) atTop (𝓝 0))
  (this : Tendsto (fun n => √(‖(OptProblem.A₁ E₂) (e₁ n) + (OptProblem.A₂ E₁) (e₂ n)‖ ^ 2)) atTop (𝓝 √0)) :
  Tendsto (fun n => ‖(OptProblem.A₁ E₂) (e₁ n) + (OptProblem.A₂ E₁) (e₂ n)‖) atTop (𝓝 0) := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
inst✝ : Setting E₁ E₂ F admm admm_kkt
h : Tendsto (fun n => ‖(OptProblem.A₁ E₂) (e₁ n) + (OptProblem.A₂ E₁) (e₂ n)‖ ^ 2) atTop (𝓝 0)
this : Tendsto (fun n => √(‖(OptProblem.A₁ E₂) (e₁ n) + (OptProblem.A₂ E₁) (e₂ n)‖ ^ 2)) atTop (𝓝 √0)
⊢ Tendsto (fun n => ‖(OptProblem.A₁ E₂) (e₁ n) + (OptProblem.A₂ E₁) (e₂ n)‖) atTop (𝓝 0)

Tactic:
rw [Real.sqrt_zero] at this
    simp at this
    exact this

Tactic state after:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_31.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} [inst_9 : Setting E₁ E₂ F admm admm_kkt] (n : ℕ) :
  (OptProblem.A₁ E₂) (e₁ n) + (OptProblem.A₂ E₁) (e₂ n) =
    (OptProblem.A₁ E₂) (ADMM.x₁ E₂ F n) + (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F n) - OptProblem.b E₁ E₂ := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
inst✝ : Setting E₁ E₂ F admm admm_kkt
n : ℕ
⊢ (OptProblem.A₁ E₂) (e₁ n) + (OptProblem.A₂ E₁) (e₂ n) =
    (OptProblem.A₁ E₂) (ADMM.x₁ E₂ F n) + (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F n) - OptProblem.b E₁ E₂

Tactic:
rw [e₁, e₂]
    simp
    calc
  _ = A₁ (x₁ n) + A₂ (x₂ n) - ((A₁ x₁') + (A₂ x₂')) := by rw [sub_add_sub_comm]
  _ = A₁ (x₁ n) + A₂ (x₂ n) - b + b - ((A₁ x₁') + (A₂ x₂')) := by rw [sub_add_cancel]
  _ = A₁ (x₁ n) + A₂ (x₂ n) - b := by rw [Satisfaction_ofthekkt.eq]; simp

Tactic state after:
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_32.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm}
  (h : Tendsto (fun n => ‖(OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1) - ADMM.x₂ E₁ F n)‖ ^ 2) atTop (𝓝 0))
  (this : Tendsto (fun n => √(‖(OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1) - ADMM.x₂ E₁ F n)‖ ^ 2)) atTop (𝓝 √0))
  (h_original_goal : Tendsto (fun n => ‖(OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1) - ADMM.x₂ E₁ F n)‖) atTop (𝓝 0)) :
  Tendsto (fun n => ‖(OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1)) - (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F n)‖) atTop
    (𝓝 0) := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
inst✝ : Setting E₁ E₂ F admm admm_kkt
h : Tendsto (fun n => ‖(OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1) - ADMM.x₂ E₁ F n)‖ ^ 2) atTop (𝓝 0)
this : Tendsto (fun n => √(‖(OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1) - ADMM.x₂ E₁ F n)‖ ^ 2)) atTop (𝓝 √0)
⊢ Tendsto (fun n => ‖(OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1) - ADMM.x₂ E₁ F n)‖) atTop (𝓝 0)

Tactic:
rw [Real.sqrt_zero] at this
    simp [Real.sqrt_sq] at this
    simp

Tactic state after:
[E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 inst✝ : Setting E₁ E₂ F admm admm_kkt
 h : Tendsto (fun n => ‖(OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1) - ADMM.x₂ E₁ F n)‖ ^ 2) atTop (𝓝 0)
 this : Tendsto (fun n => ‖(OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1)) - (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F n)‖) atTop (𝓝 0)
 ⊢ Tendsto (fun n => ‖(OptProblem.A₂ E₁) (ADMM.x₂ E₁ F (n + 1)) - (OptProblem.A₂ E₁) (ADMM.x₂ E₁ F n)‖) atTop (𝓝 0)]
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_33.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂))
  (fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)) [inst_9 : Setting E₁ E₂ F admm admm_kkt]
  (h_original_goal : Tendsto (fun n => (OptProblem.A₁ E₂) (e₁ ↑(φ₁ n)) + (OptProblem.A₂ E₁) (e₂ ↑(φ₁ n))) atTop (𝓝 0)) :
  StrictMono fun n => ↑(φ₁ n) := sorry

Tactic state before:
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
inst✝ : Setting E₁ E₂ F admm admm_kkt
⊢ Tendsto (fun n => (OptProblem.A₁ E₂) (e₁ ↑(φ₁ n)) + (OptProblem.A₂ E₁) (e₂ ↑(φ₁ n))) atTop (𝓝 0)

Tactic:
apply Filter.tendsto_iff_seq_tendsto.1 Seq_converge_zero₁
    apply StrictMono.tendsto_atTop
    have : (fun n => (Int.toNat (φ₁ n))) = (fun n => (φ (n + 1))) := by ext n; rw [φ₁_equ fullrank₁ fullrank₂ n]; simp

Tactic state after:
[case a.h
 E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
 fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
 inst✝ : Setting E₁ E₂ F admm admm_kkt
 this : (fun n => (↑↑(φ₁ n)).toNat) = fun n => φ (n + 1)
 ⊢ StrictMono fun n => ↑(φ₁ n)]
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_34.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂))
  (fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)) [inst_9 : Setting E₁ E₂ F admm admm_kkt]
  (this : (fun n => (↑↑(φ₁ n)).toNat) = fun n => φ (n + 1)) (h_original_goal : StrictMono fun n => ↑(φ₁ n)) :
  (fun n => ↑(φ₁ n)) = fun n => φ (n + 1) := sorry

Tactic state before:
case a.h
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
inst✝ : Setting E₁ E₂ F admm admm_kkt
this : (fun n => (↑↑(φ₁ n)).toNat) = fun n => φ (n + 1)
⊢ StrictMono fun n => ↑(φ₁ n)

Tactic:
simp at this
    rw [this]
    apply StrictMono.comp

Tactic state after:
[case a.h.hg
 E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
 fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
 inst✝ : Setting E₁ E₂ F admm admm_kkt
 this : (fun n => ↑(φ₁ n)) = fun n => φ (n + 1)
 ⊢ StrictMono φ,
 case a.h.hf
 E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
 fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
 inst✝ : Setting E₁ E₂ F admm admm_kkt
 this : (fun n => ↑(φ₁ n)) = fun n => φ (n + 1)
 ⊢ StrictMono fun n => n + 1]
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_35.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂))
  (fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)) [inst_9 : Setting E₁ E₂ F admm admm_kkt]
  (this : (fun n => (↑↑(φ₁ n)).toNat) = fun n => φ (n + 1)) (h_original_goal : StrictMono fun n => ↑(φ₁ n)) :
  StrictMono φ := sorry

Tactic state before:
case a.h
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
inst✝ : Setting E₁ E₂ F admm admm_kkt
this : (fun n => (↑↑(φ₁ n)).toNat) = fun n => φ (n + 1)
⊢ StrictMono fun n => ↑(φ₁ n)

Tactic:
simp at this
    rw [this]
    apply StrictMono.comp

Tactic state after:
[case a.h.hg
 E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
 fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
 inst✝ : Setting E₁ E₂ F admm admm_kkt
 this : (fun n => ↑(φ₁ n)) = fun n => φ (n + 1)
 ⊢ StrictMono φ,
 case a.h.hf
 E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
 fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
 inst✝ : Setting E₁ E₂ F admm admm_kkt
 this : (fun n => ↑(φ₁ n)) = fun n => φ (n + 1)
 ⊢ StrictMono fun n => n + 1]
import Mathlib
import Optlib


open Set InnerProductSpace Topology Filter Bornology Metric Real

theorem extracted_formal_statement_36.{u_3, u_2, u_1} {E₁ : Type u_1} {E₂ : Type u_2} {F : Type u_3}
  [inst : NormedAddCommGroup E₁] [inst_1 : InnerProductSpace ℝ E₁] [inst_2 : FiniteDimensional ℝ E₁]
  [inst_3 : NormedAddCommGroup E₂] [inst_4 : InnerProductSpace ℝ E₂] [inst_5 : FiniteDimensional ℝ E₂]
  [inst_6 : NormedAddCommGroup F] [inst_7 : InnerProductSpace ℝ F] [inst_8 : FiniteDimensional ℝ F]
  {admm : ADMM E₁ E₂ F} {admm_kkt : Existance_of_kkt admm} (fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂))
  (fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)) [inst_9 : Setting E₁ E₂ F admm admm_kkt]
  (this : (fun n => (↑↑(φ₁ n)).toNat) = fun n => φ (n + 1)) (h_original_goal : StrictMono fun n => ↑(φ₁ n)) :
  (fun n => ↑(φ₁ n)) = fun n => φ (n + 1) := sorry

Tactic state before:
case a.h
E₁ : Type u_1
E₂ : Type u_2
F : Type u_3
inst✝⁹ : NormedAddCommGroup E₁
inst✝⁸ : InnerProductSpace ℝ E₁
inst✝⁷ : FiniteDimensional ℝ E₁
inst✝⁶ : NormedAddCommGroup E₂
inst✝⁵ : InnerProductSpace ℝ E₂
inst✝⁴ : FiniteDimensional ℝ E₂
inst✝³ : NormedAddCommGroup F
inst✝² : InnerProductSpace ℝ F
inst✝¹ : FiniteDimensional ℝ F
admm : ADMM E₁ E₂ F
admm_kkt : Existance_of_kkt admm
fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
inst✝ : Setting E₁ E₂ F admm admm_kkt
this : (fun n => (↑↑(φ₁ n)).toNat) = fun n => φ (n + 1)
⊢ StrictMono fun n => ↑(φ₁ n)

Tactic:
simp at this
    rw [this]
    apply StrictMono.comp

Tactic state after:
[case a.h.hg
 E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
 fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
 inst✝ : Setting E₁ E₂ F admm admm_kkt
 this : (fun n => ↑(φ₁ n)) = fun n => φ (n + 1)
 ⊢ StrictMono φ,
 case a.h.hf
 E₁ : Type u_1
 E₂ : Type u_2
 F : Type u_3
 inst✝⁹ : NormedAddCommGroup E₁
 inst✝⁸ : InnerProductSpace ℝ E₁
 inst✝⁷ : FiniteDimensional ℝ E₁
 inst✝⁶ : NormedAddCommGroup E₂
 inst✝⁵ : InnerProductSpace ℝ E₂
 inst✝⁴ : FiniteDimensional ℝ E₂
 inst✝³ : NormedAddCommGroup F
 inst✝² : InnerProductSpace ℝ F
 inst✝¹ : FiniteDimensional ℝ F
 admm : ADMM E₁ E₂ F
 admm_kkt : Existance_of_kkt admm
 fullrank₁ : Function.Injective ⇑(OptProblem.A₁ E₂)
 fullrank₂ : Function.Injective ⇑(OptProblem.A₂ E₁)
 inst✝ : Setting E₁ E₂ F admm admm_kkt
 this : (fun n => ↑(φ₁ n)) = fun n => φ (n + 1)
 ⊢ StrictMono fun n => n + 1]