Theorems / mh_ineq_8c7304
Mathlib held-out
Inequalities · hard
theorem lg_target {K : Type u_1} [Field K] [LinearOrder K] [IsStrictOrderedRing K] {x : K} {m n : ℕ} (hx : 0 ≤ x) (h'x : x < 1) : ∑ i ∈ Finset.Ico m n, x ^ i ≤ x ^ m / (1 - x) := by- Mathlib declaration
- geom_sum_Ico_le_of_lt_one
- Held-out module
- Mathlib.Algebra.Order.Field.GeomSum
- Banned modules (itself + downstream)
- 4
- Reference proof premises (reachable / held-out)
- 34 / 0
Traces
Each configuration's full record: what was retrieved, what the model wrote, what Lean said back.
Not verified1 model calls · 1 Lean checks · $0.00042
Attempts
- sample 0 · round 0Syntax error23.3 s model time
Proof induction' n with d hd using Nat.strong_induction_on · exact (le_refl (x ^ m / (1 - x))) · rw [Finset.Ico_eq_Ico] have h1 : 0 ≤ x := hx have h2 : x < 1 := h'x have h3 : 1 - x > 0 := by simp only [sub_pos_iff, h2] have h4 : x ^ m / (1 - x) = x ^ m / (1 - x) := rfl have h5 : ∑ i ∈ Finset.Ico d (d + 1), x ^ i = ∑ i ∈ Finset.Ico d (d + 1), x ^ i := rfl have h6 : ∑ i ∈ Finset.Ico d (d + 1), x ^ i = (x ^ d - 1) / (1 - x) := by rw [Finset.Ico_eq_Ico] let S := Finset.range d have h7 : ∑ i ∈ S, x ^ i = (x ^ d - 1) / (1 - x) := by induction' d with k hk using Nat.strong_induction_on · exact (le_refl ((x ^ 0 - 1) / (1 - x))) · rw [Finset.range_succ, Finset.sum_insert, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Finset.sum_range_right, Finset.sum_range_right] rw [Fin......What Lean printed (this is all the model sees on repair) 3:179: error: unsolved goals case zero K : Type u_1 inst✝² : Field K inst✝¹ : LinearOrder K inst✝ : IsStrictOrderedRing K x : K m : ℕ hx : 0 ≤ x h'x : x < 1 ⊢ ∑ i ∈ Finset.Ico m 0, x ^ i ≤ x ^ m / (1 - x) case succ K : Type u_1 inst✝² : Field K inst✝¹ : LinearOrder K inst✝ : IsStrictOrderedRing K x : K m : ℕ hx : 0 ≤ x h'x : x < 1 d : ℕ hd : ∑ i ∈ Finset.Ico m d, x ^ i ≤ x ^ m / (1 - x) ⊢ ∑ i ∈ Finset.Ico m (d + 1), x ^ i ≤ x ^ m / (1 - x) 4:25: error: unexpected token 'using'; expected command
Reference proof
Mathlib's own source for this declaration, shown for comparison. It may use lemmas the prover is not allowed to use.
lemma geom_sum_Ico_le_of_lt_one (hx : 0 ≤ x) (h'x : x < 1) :
∑ i ∈ Ico m n, x ^ i ≤ x ^ m / (1 - x) := by
rcases le_or_gt m n with (hmn | hmn)
· rw [geom_sum_Ico' h'x.ne hmn]
apply div_le_div₀ (pow_nonneg hx _) _ (sub_pos.2 h'x) le_rfl
simpa using pow_nonneg hx _
· rw [Ico_eq_empty, sum_empty]
· apply div_nonneg (pow_nonneg hx _)
simpa using h'x.le
· simpa using hmn.le