Skip to content

Commit

Permalink
Merge pull request #245 from trishullab/george
Browse files Browse the repository at this point in the history
Fix some formalizations, provide few Lean rewrites.
  • Loading branch information
GeorgeTsoukalas authored Jan 12, 2025
2 parents a57dc33 + 31ee48b commit 5a81e8a
Show file tree
Hide file tree
Showing 13 changed files with 65 additions and 89 deletions.
13 changes: 5 additions & 8 deletions coq/src/putnam_2017_a2.v
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,9 @@ Local Open Scope ring_scope.

Variable R : realType.
Theorem putnam_2017_a2
(Q : nat -> R -> R)
(hQbase : forall x : R, Q 0%nat x = 1 /\ Q 1%nat x = x)
(hQn : forall n : nat, ge n 2 -> forall x : R, Q n x = ((Q (n.-1) x) ^+ 2 - 1) / (Q (n.-2) x))
: forall n : nat, gt n 0 ->
exists P : {poly R},
size P = n.+1 /\
(forall i : nat, exists c : int, P`_i = c%:~R) /\
Q n = (fun x : R => P.[x]).
(Q : nat -> {poly R})
(hQbase : Q 0%nat = 1%:P /\ Q 1%nat = 'X)
(hQn : forall n : nat, Q (n.+2) * Q n = Q (n.+1) ^+ 2 - 1%:P)
(n : nat) (hn : lt 0 n) :
exists P : {poly int}, Q n = map_poly intr P.
Proof. Admitted.
2 changes: 1 addition & 1 deletion coq/src/putnam_2022_a1.v
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Require Import Reals Coquelicot.Coquelicot.
Definition putnam_2022_a1_solution : R -> R -> Prop := (a = 0 /\ b = 0) \/ (Rabs a >= 1) \/ (Rabs a < 1 /\ (b < ln (1 - (1 - sqrt (1 - a ^ 2)) / a) ^ 2 - Rabs a * (1 - (1 - sqrt (1 - a ^ 2)) / a) \/ b > ln (1 - (1 + sqrt (1 - a ^ 2) / a) ^ 2 - Rabs a * (1 + sqrt (1 - a ^ 2) / a)))).
Definition putnam_2022_a1_solution : R -> R -> Prop := fun a b => (a = 0 /\ b = 0) \/ (Rabs a >= 1) \/ (0 < Rabs a < 1 /\ (b < ln (1 + ((1 - sqrt (1 - a ^2))/ a) ^ 2) - a * (1 - sqrt (1 - a ^ 2) / a) \/ b > ln (1 + ((1 + sqrt (1 - a ^ 2)) / a) ^ 2) - a * (1 + sqrt (1 - a ^ 2) / a))).
Theorem putnam_2022_a1
: forall a b : R, (exists! (x: R), a * x + b = ln (1 + x ^ 2) / ln 10) <-> putnam_2022_a1_solution a b.
Proof. Admitted.
5 changes: 2 additions & 3 deletions isabelle/putnam_1963_a3.thy
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,8 @@ theorem putnam_1963_a3:
assumes hP : "(\<forall> x. P 0 x = x) \<and> (\<forall> (i :: nat) (y :: real \<Rightarrow> real). P (i + 1) y = P i (\<lambda> x. x * deriv y x - (real_of_nat i) * y x))"
and hn : "0 < n"
and hf : "continuous_on {1..} f"
shows "((\<forall> k :: nat < n.
((deriv^^k) y) C1_differentiable_on {1..} ∧
((deriv^^k) y) 1 = 0) \<and>
and hy : "\<forall> k :: nat < n. ((deriv^^k) y) C1_differentiable_on {1..}"
shows "((\<forall> k :: nat < n. ((deriv^^k) y) 1 = 0) \<and>
(\<forall> x :: real. x \<ge> 0 \<longrightarrow> (P n y) x = f x)) \<longleftrightarrow>
(\<forall> x :: real \<ge> 1. y x = interval_lebesgue_integral lebesgue 1 (ereal x) (putnam_1963_a3_solution f n x))"
sorry
Expand Down
20 changes: 10 additions & 10 deletions isabelle/putnam_1984_a6.thy
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,18 @@ theory putnam_1984_a6 imports Complex_Main
"HOL-Number_Theory.Cong"
begin

definition putnam_1984_a6_solution :: "bool \<times> nat" where "putnam_1984_a6_solution \<equiv> undefined"
(* (True, 4) *)
definition putnam_1984_a6_solution :: "nat" where "putnam_1984_a6_solution \<equiv> undefined"
(* 4 *)
theorem putnam_1984_a6:
fixes f :: "nat \<Rightarrow> nat"
and kadistinct :: "nat \<Rightarrow> (nat \<Rightarrow> nat) \<Rightarrow> bool"
and gpeq :: "(nat \<Rightarrow> nat) \<Rightarrow> nat \<Rightarrow> bool"
defines "kadistinct \<equiv> \<lambda> (k :: nat) (a :: nat \<Rightarrow> nat). k \<ge> 1 \<and> (\<forall> i j :: nat. (i < k \<and> j < k \<and> i \<noteq> j) \<longrightarrow> a i \<noteq> a j)"
and "gpeq \<equiv> \<lambda> (g :: nat \<Rightarrow> nat) (p :: nat). p > 0 \<and> (\<forall> (s :: nat) \<ge> 1. g s = g (s + p))"
assumes hf : "\<forall> n > 0. f n = (if [fact n \<noteq> 0] (mod 10) then ((fact n) mod 10) else f ((fact n) div 10))"
shows "let (b, n) = putnam_1984_a6_solution in \<exists> g :: nat \<Rightarrow> nat.
(\<forall> (k :: nat) (a :: nat \<Rightarrow> nat). kadistinct k a \<longrightarrow> g (\<Sum> i=0..(k-1). a i) = f (\<Sum> i=0..(k-1). 5^(a i)))
\<and> (if b then gpeq g n \<and> (\<forall> p :: nat. gpeq g p \<longrightarrow> p \<ge> n) else \<not>(\<exists> p :: nat. gpeq g p))"
and IsPeriodicFrom :: "nat \<Rightarrow> (nat \<Rightarrow> nat) \<Rightarrow> nat \<Rightarrow> bool"
and P :: "nat \<Rightarrow> (nat \<Rightarrow> nat) \<Rightarrow> nat \<Rightarrow> bool"
assumes hf : "\<forall> n > 0. f n = (if [fact n \<noteq> 0] (mod 10) then ((fact n) mod 10) else f ((fact n) div 10))"
and P_def : "\<forall> x g p. P x g p \<longleftrightarrow> (if p = 0 then (\<forall> q > 0. \<not> IsPeriodicFrom x g q) else p = (LEAST q ::nat. 0 < q \<and> IsPeriodicFrom x g q))"
and IsPeriodicFrom_def : "\<forall> x f p. (IsPeriodicFrom x f p \<longleftrightarrow> (\<forall> (s :: nat) \<ge> x. f s = f (s + p)))"
shows "\<exists> g :: nat \<Rightarrow> nat.
(\<forall> (k :: nat) (a :: nat \<Rightarrow> nat). (k > 0 \<and> inj a) \<longrightarrow> (f (\<Sum> i=0..(k-1). 5^(a i)) = g (\<Sum> i=0..(k-1). a i)) \<and>
P 1 g putnam_1984_a6_solution)"
sorry

end
2 changes: 1 addition & 1 deletion isabelle/putnam_1994_a1.thy
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ begin
theorem putnam_1994_a1:
fixes a :: "nat \<Rightarrow> real"
assumes ha: "\<forall>n::nat\<ge>1. 0 < a n \<and> a n \<le> a (2*n) + a (2*n+1)"
shows "\<not>(\<exists>s::real. filterlim (\<lambda>N::nat. (\<Sum>n::nat=1..N. a n)) (nhds s) at_top)"
shows "filterlim (\<lambda>N::nat. (\<Sum>n::nat=1..N. a n)) at_top at_top"
sorry

end
6 changes: 2 additions & 4 deletions isabelle/putnam_1994_b3.thy
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,8 @@ begin
definition putnam_1994_b3_solution :: "real set" where "putnam_1994_b3_solution \<equiv> undefined"
(* {..<1} *)
theorem putnam_1994_b3:
fixes k :: real
and allfexN :: bool
assumes hallfexN: "allfexN \<equiv> (\<forall>f::real\<Rightarrow>real. (((\<forall>x::real. f x > 0) \<and> f differentiable_on UNIV \<and> (\<forall>x::real. deriv f x > f x)) \<longrightarrow> (\<exists>N::real. \<forall>x::real>N. f x > exp (k*x))))"
shows "allfexN \<longleftrightarrow> k \<in> putnam_1994_b3_solution"
shows "{k :: real. (\<forall> f::real\<Rightarrow>real. ((\<forall> x. 0 < f x \<and> f x < deriv f x) \<and> f differentiable_on UNIV) \<longrightarrow>
(\<exists> N::real. \<forall> x::real>N. f x > exp (k * x)))} = putnam_1994_b3_solution"
sorry

end
5 changes: 3 additions & 2 deletions isabelle/putnam_2009_b4.thy
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ theory putnam_2009_b4 imports Complex_Main
"HOL-Computational_Algebra.Polynomial"
"HOL-Analysis.Set_Integral"
"HOL-Analysis.Lebesgue_Measure"
"HOL-Analysis.Interval_Integral"
begin

definition putnam_2009_b4_solution :: nat where "putnam_2009_b4_solution \<equiv> undefined"
Expand All @@ -11,9 +12,9 @@ interpretation mvpolyspace: vector_space "mvpolyscale" sorry
theorem putnam_2009_b4:
fixes balanced :: "(real poly poly) \<Rightarrow> bool"
and V :: "(real poly poly) set"
defines "balanced \<equiv> (\<lambda>P::real poly poly. (\<forall>r::real>0. (set_lebesgue_integral lebesgue (sphere 0 r) (\<lambda>x::real^2. poly (poly P (monom (x$2) 0)) (x$1))) / (2*pi*r) = 0))"
defines "balanced \<equiv> (\<lambda>P::real poly poly. (\<forall>r::real>0. (interval_lebesgue_integral lebesgue 0 (2*pi) (\<lambda> t. poly (poly P (monom (r * sin t) 0)) (r * cos t))) / (2*pi*r) = 0))"
assumes hV: "\<forall>P::real poly poly. (P \<in> V \<longleftrightarrow> (balanced P \<and> degree P \<le> 2009 \<and> (\<forall>i::nat. degree (coeff P i) \<le> 2009)))"
shows "mvpolyspace.dim V = putnam_2009_b4_solution"
sorry

end
end
10 changes: 5 additions & 5 deletions isabelle/putnam_2017_a2.thy
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ theory putnam_2017_a2 imports Complex_Main
begin

theorem putnam_2017_a2:
fixes Q :: "nat \<Rightarrow> real \<Rightarrow> real"
assumes hQbase: "\<forall>x::real. Q 0 x = 1 \<and> Q 1 x = x"
and hQn: "\<forall>n::nat>2. \<forall>x::real. Q n x = ((Q (n-1) x)^2 - 1) / Q (n-2) x"
shows "\<forall>n::nat>0. \<exists>P::real poly. (\<forall>i::nat. coeff P i = round (coeff P i)) \<and> Q n = poly P"
fixes Q :: "nat \<Rightarrow> real poly"
assumes hQbase: "\<forall>x::real. Q 0 = monom 1 0 \<and> Q 1 = monom 1 1"
and hQn: "\<forall>n::nat. Q (n + 2) * Q n = (Q (n-1))^2 - 1"
shows "\<forall>n::nat>0. \<exists>P::int poly. Q n = map_poly real_of_int P"
sorry

end
end
5 changes: 2 additions & 3 deletions isabelle/putnam_2021_a1.thy
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@ definition putnam_2021_a1_solution :: nat where "putnam_2021_a1_solution \<equiv
(* 578 *)
theorem putnam_2021_a1:
fixes P :: "((int \<times> int) list) \<Rightarrow> bool"
assumes "P \<equiv> (\<lambda>l::(int\<times>int) list. length l \<ge> 1 \<and> l!0 = (0,0) \<and> last l = (2021,2021) \<and>
(\<forall>n::nat\<in>{0..((length l)-2)}. sqrt ((fst (l!n) - fst (l!(n + 1)))^2 + (snd (l!n) - snd (l!(n + 1)))^2) = 5))"
shows "(LEAST llen::nat. (\<exists>l::(int\<times>int) list. P l \<and> llen = length l)) = putnam_2021_a1_solution"
assumes P_def : "\<forall> l. (P l \<longleftrightarrow> successively (\<lambda> p q. (fst p - fst q) ^ 2 + (snd p - snd q) ^ 2 = 25) l)"
shows "(LEAST k :: nat. \<exists> l. P ((0, 0) # l) \<and> last l = (2021, 2021) \<and> length l = k) = putnam_2021_a1_solution"
sorry

end
2 changes: 1 addition & 1 deletion isabelle/putnam_2022_a1.thy
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ theory putnam_2022_a1 imports Complex_Main
begin

definition putnam_2022_a1_solution :: "(real \<times> real) set" where "putnam_2022_a1_solution \<equiv> undefined"
(* {(a, b). (a = 0 \<and> b = 0) \<or> ((abs a) \<ge> 1) \<or> (0 < (abs a) \<and> (abs a) < 1 \<and> (b < (ln (1 - (1 - sqrt (1 - a^2))/a))^2 - (abs a) * (1 - sqrt (1 - a^2))/a \<or> b > (ln (1 - (1 + sqrt (1 - a^2))/a))^2 - (abs a) * (1 + sqrt (1 - a^2))/a))} *)
(* {(a, b). (a = 0 \<and> b = 0) \<or> ((abs a) \<ge> 1) \<or> (0 < (abs a) \<and> (abs a) < 1 \<and> (b < (ln (1 + (1 - sqrt (1 - a^2))/a)^2) - (abs a) * (1 - sqrt (1 - a^2))/a \<or> b > (ln (1 + (1 + sqrt (1 - a^2))/a)^2) - (abs a) * (1 + sqrt (1 - a^2))/a))} *)
theorem putnam_2022_a1:
shows "{(a, b). \<exists>! x :: real. a * x + b = ln (1 + x^2)} = putnam_2022_a1_solution"
sorry
Expand Down
23 changes: 7 additions & 16 deletions lean4/src/putnam_1986_a5.lean
Original file line number Diff line number Diff line change
@@ -1,22 +1,13 @@
import Mathlib

open Real Equiv

/--
Suppose $f_1(x),f_2(x),\dots,f_n(x)$ are functions of $n$ real variables $x=(x_1,\dots,x_n)$ with continuous second-order partial derivatives everywhere on $\mathbb{R}^n$. Suppose further that there are constants $c_{ij}$ such that $\frac{\partial f_i}{\partial x_j}-\frac{\partial f_j}{\partial x_i}=c_{ij}$ for all $i$ and $j$, $1 \leq i \leq n$, $1 \leq j \leq n$. Prove that there is a function $g(x)$ on $\mathbb{R}^n$ such that $f_i+\partial g/\partial x_i$ is linear for all $i$, $1 \leq i \leq n$. (A linear function is one of the form $a_0+a_1x_1+a_2x_2+\dots+a_nx_n$.)
-/
theorem putnam_1986_a5
(n : ℕ)
(f : Fin n → ((Fin n → ℝ) → ℝ))
(xrepl : (Fin n → ℝ) → Fin n → ℝ → (Fin n → ℝ))
(contdiffx : ((Fin n → ℝ) → ℝ) → Fin n → (Fin n → ℝ) → Prop)
(partderiv : ((Fin n → ℝ) → ℝ) → Fin n → ((Fin n → ℝ) → ℝ))
(hpartderiv : partderiv = (fun (func : (Fin n → ℝ) → ℝ) (i : Fin n) => (fun x : Fin n → ℝ => deriv (fun xi : ℝ => func (xrepl x i xi)) (x i))))
(npos : n ≥ 1)
(hxrepl : xrepl = (fun (x : Fin n → ℝ) (i : Fin n) (xi : ℝ) => (fun j : Fin n => if j = i then xi else x j)))
(hcontdiffx : contdiffx = (fun (func : (Fin n → ℝ) → ℝ) (i : Fin n) (x : Fin n → ℝ) => ContDiff ℝ 1 (fun xi : ℝ => func (xrepl x i xi))))
(hfcontdiff1 : ∀ i : Fin n, ∀ j : Fin n, ∀ x : Fin n → ℝ, contdiffx (f i) j x)
(hfcontdiff2 : ∀ i : Fin n, ∀ j1 j2 : Fin n, ∀ x : Fin n → ℝ, contdiffx (partderiv (f i) j1) j2 x)
(hfc : ∃ c : Fin n → Fin n → ℝ, ∀ i j : Fin n, partderiv (f i) j - partderiv (f j) i = (fun x : Fin n → ℝ => c i j))
: ∃ g : (Fin n → ℝ) → ℝ, ∀ i : Fin n, IsLinearMap ℝ (f i + partderiv g i) :=
sorry
(n : ℕ) (hn : 1 ≤ n)
(f : Fin n → ((Fin n → ℝ) → ℝ))
(hf : ∀ i, ContDiff ℝ 2 (f i))
(C : Fin n → Fin n → ℝ)
(hf' : ∀ i j : Fin n, ∀ x : Fin n → ℝ, fderiv ℝ (f i) x (Pi.single j 1) - fderiv ℝ (f j) x (Pi.single i 1) = C i j)
: ∃ g : (Fin n → ℝ) → ℝ, ∀ i : Fin n, IsLinearMap ℝ (λ x ↦ f i x + fderiv ℝ g x (Pi.single i 1)) :=
sorry
32 changes: 12 additions & 20 deletions lean4/src/putnam_1987_a5.lean
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
import Mathlib

open MvPolynomial Real

abbrev putnam_1987_a5_solution : Prop := sorry
-- False
/--
Expand All @@ -13,21 +11,15 @@ Let $\vec{G}(x,y)=\left(\frac{-y}{x^2+4y^2},\frac{x}{x^2+4y^2},0\right)$. Prove
\end{enumerate}
-/
theorem putnam_1987_a5
(vec2 : ℝ → ℝ → (Fin 2 → ℝ))
(vec3 : ℝ → ℝ → ℝ → (Fin 3 → ℝ))
(G : (Fin 2 → ℝ) → (Fin 3 → ℝ))
(hG : G = (fun v : Fin 2 → ℝ => vec3 (-v 1 / ((v 0) ^ 2 + 4 * (v 1) ^ 2)) (v 0 / ((v 0) ^ 2 + 4 * (v 1) ^ 2)) 0))
(vrepl : (Fin 3 → ℝ) → Fin 3 → ℝ → (Fin 3 → ℝ))
(hvrepl : vrepl = (fun (v : Fin 3 → ℝ) (i : Fin 3) (vi : ℝ) => (fun j : Fin 3 => if j = i then vi else v j)))
(contdiffv : ((Fin 3 → ℝ) → ℝ) → Fin 3 → (Fin 3 → ℝ) → Prop)
(hcontdiffv : contdiffv = (fun (Fi : (Fin 3 → ℝ) → ℝ) (j : Fin 3) (v : Fin 3 → ℝ) => ContDiffAt ℝ 1 (fun vj : ℝ => Fi (vrepl v j vj)) (v j)))
(partderiv : ((Fin 3 → ℝ) → ℝ) → Fin 3 → ((Fin 3 → ℝ) → ℝ))
(hpartderiv : partderiv = (fun (Fi : (Fin 3 → ℝ) → ℝ) (j : Fin 3) => (fun v : Fin 3 → ℝ => deriv (fun vj : ℝ => Fi (vrepl v j vj)) (v j))))
(Fprop1 Fprop2 Fprop3 : (Fin 3 → ((Fin 3 → ℝ) → ℝ)) → Prop)
(hFprop1 : Fprop1 = (fun F : Fin 3 → ((Fin 3 → ℝ) → ℝ) => ∀ i : Fin 3, ∀ j : Fin 3, ∀ v ≠ 0, contdiffv (F i) j v))
(hFprop2 : Fprop2 = (fun F : Fin 3 → ((Fin 3 → ℝ) → ℝ) => ∀ v ≠ 0, vec3 ((partderiv (F 2) 1 - partderiv (F 1) 2) v) ((partderiv (F 0) 2 - partderiv (F 2) 0) v) ((partderiv (F 1) 0 - partderiv (F 0) 1) v) = 0))
(hFprop3 : Fprop3 = (fun F : Fin 3 → ((Fin 3 → ℝ) → ℝ) => ∀ x y : ℝ, (fun i : Fin 3 => (F i) (vec3 x y 0)) = G (vec2 x y)))
(hvec2 : ∀ x y : ℝ, (vec2 x y) 0 = x ∧ (vec2 x y) 1 = y)
(hvec3 : ∀ x y z : ℝ, (vec3 x y z) 0 = x ∧ (vec3 x y z) 1 = y ∧ (vec3 x y z) 2 = z)
: (∃ F : Fin 3 → ((Fin 3 → ℝ) → ℝ), Fprop1 F ∧ Fprop2 F ∧ Fprop3 F) ↔ putnam_1987_a5_solution :=
sorry
(curl : ((Fin 3 → ℝ) → (Fin 3 → ℝ)) → ((Fin 3 → ℝ) → (Fin 3 → ℝ)))
(curl_def : ∀ f x, curl f x = ![
fderiv ℝ f x (Pi.single 1 1) 2 - fderiv ℝ f x (Pi.single 2 1) 1,
fderiv ℝ f x (Pi.single 2 1) 0 - fderiv ℝ f x (Pi.single 0 1) 2,
fderiv ℝ f x (Pi.single 0 1) 1 - fderiv ℝ f x (Pi.single 1 1) 0])
(G : (Fin 2 → ℝ) → (Fin 3 → ℝ))
(G_def : ∀ x y, G ![x, y] = ![(-y / (x ^ 2 + 4 * y ^ 2)), (x / (x ^ 2 + 4 * y ^ 2)), 0]) :
(∃ F : (Fin 3 → ℝ) → (Fin 3 → ℝ),
ContDiffOn ℝ 1 F {v | v ≠ ![0,0,0]} ∧
(∀ x, x ≠ 0 → curl F x = 0) ∧
∀ x y, F ![x, y, 0] = G ![x, y]) ↔ putnam_1987_a5_solution :=
sorry
29 changes: 14 additions & 15 deletions lean4/src/putnam_1989_b6.lean
Original file line number Diff line number Diff line change
@@ -1,23 +1,22 @@
import Mathlib

open Nat Filter Topology Set
open Nat Filter Topology Set ProbabilityTheory

-- Note: uses (ℝ → ℝ) instead of (Set.Icc 0 1 → ℝ)
/--
Let $(x_1,x_2,\dots,x_n)$ be a point chosen at random from the $n$-dimensional region defined by $0<x_1<x_2<\dots<x_n<1$. Let $f$ be a continuous function on $[0,1]$ with $f(1)=0$. Set $x_0=0$ and $x_{n+1}=1$. Show that the expected value of the Riemann sum $\sum_{i=0}^n (x_{i+1}-x_i)f(x_{i+1})$ is $\int_0^1 f(t)P(t)\,dt$, where $P$ is a polynomial of degree $n$, independent of $f$, with $0 \leq P(t) \leq 1$ for $0 \leq t \leq 1$.
-/
theorem putnam_1989_b6
(n : ℕ)
(Sx : Set (Fin n → ℝ))
(fprop : (ℝ → ℝ) → Prop)
(xext : (Fin n → ℝ) → (ℕ → ℝ))
(fxsum : (ℝ → ℝ) → (Fin n → ℝ) → ℝ)
(fEV : (ℝ → ℝ) → ℝ)
(hSx : Sx = {x : Fin n → ℝ | 0 < x ∧ StrictMono x ∧ x < 1})
(hfprop : fprop = (fun f : ℝ → ℝ => ContinuousOn f (Set.Icc 0 1) ∧ f 1 = 0))
(hfxsum : fxsum = (fun (f : ℝ → ℝ) (x : Fin n → ℝ) => ∑ i in Finset.Icc 0 n, ((xext x) (i + 1) - (xext x) i) * f ((xext x) (i + 1))))
(hfEV : fEV = (fun f : ℝ → ℝ => (∫ x in Sx, fxsum f x) / (∫ x in Sx, 1)))
(npos : n ≥ 1)
(hxext : ∀ x : Fin n → ℝ, (xext x) 0 = 0 ∧ (xext x) (n + 1) = 1 ∧ (∀ i : Fin n, (xext x) (i + 1) = x i))
: ∃ P : Polynomial ℝ, P.degree = n ∧ (∀ t ∈ Set.Icc 0 1, 0 ≤ P.eval t ∧ P.eval t ≤ 1) ∧ (∀ f : ℝ → ℝ, fprop f → fEV f = (∫ t in Set.Ioo 0 1, f t * P.eval t)) :=
sorry
(n : ℕ) [NeZero n]
(I : (Fin n → ℝ) → Fin (n + 2) → ℝ)
(I_def : ∀ x i, I x i = if i = 0 then 0 else if i = - 1 then 1 else x (i : ℕ).pred)
(X : Set (Fin n → ℝ))
(X_def : ∀ x, x ∈ X ↔ 0 < x 0 ∧ x (-1) < 1 ∧ ∀ i, i + 1 < n → x i < x (i + 1))
(S : (ℝ → ℝ) → (Fin (n + 2) → ℝ) → ℝ)
(S_def : ∀ f x, S f x = ∑ i in Finset.Iic n, (x (i + 1) - x i) * f (i + 1)) :
∃ P : Polynomial ℝ,
P.degree = n ∧
(∀ t ∈ Icc 0 1, P.eval t ∈ Icc 0 1) ∧
(∀ f : ℝ → ℝ, f 1 = 0 → ContinuousOn f (Icc 0 1) →
∫ x, S f (I x) ∂ℙ[|X] = ∫ t in (0)..1, f t * P.eval t) :=
sorry

0 comments on commit 5a81e8a

Please sign in to comment.