def
quadratic_formula
(f : Type)
[myfld f]
[fld_with_sqrt f]
[fld_not_char_two f]
(a b c : f)
(a_ne_zero : a ≠ myfld.zero) :
f
theorem
quadratic_formula_sub_proof_a
(f : Type)
[myfld f]
[fld_with_sqrt f]
[fld_not_char_two f]
(a b c sqrt : f)
(a_ne_zero : a ≠ myfld.zero) :
a .* ( .- b .* (myfld.reciprocal (two f) .* a _) .* ( .- b .* (myfld.reciprocal (two f) .* a _))) .+ a .* ( .- b .* (myfld.reciprocal (two f) .* a _) .* (sqrt .* (myfld.reciprocal (two f) .* a _))) .+ (a .* (sqrt .* (myfld.reciprocal (two f) .* a _) .* ( .- b .* (myfld.reciprocal (two f) .* a _))) .+ a .* (sqrt .* (myfld.reciprocal (two f) .* a _) .* (sqrt .* (myfld.reciprocal (two f) .* a _)))) .+ (b .* ( .- b .* (myfld.reciprocal (two f) .* a _)) .+ b .* (sqrt .* (myfld.reciprocal (two f) .* a _)) .+ c) = c .+ (myfld.reciprocal (two f) .* a _) .* (b .* (b .* (myfld.reciprocal (two f) _)) .+ (sqrt .* ((myfld.reciprocal (two f) _) .* sqrt) .+ .- b .* b))
theorem
quadratic_formula_sub_proof_b
(f : Type)
[myfld f]
[fld_with_sqrt f]
[fld_not_char_two f]
(a b c : f)
(a_ne_zero : a ≠ myfld.zero) :
theorem
quadratic_formula_works
(f : Type)
[myfld f]
[fld_with_sqrt f]
[fld_not_char_two f]
(a b c : f)
(a_ne_zero : a ≠ myfld.zero) :
quadratic_subst f (quadratic_formula f a b c a_ne_zero) a b c = myfld.zero
def
quadratic_formula_alt
(f : Type)
[myfld f]
[fld_with_sqrt f]
[fld_not_char_two f]
(a b c : f)
(a_ne_zero : a ≠ myfld.zero) :
f
theorem
quadratic_formula_alt_works
(f : Type)
[myfld f]
[fld_with_sqrt f]
[fld_not_char_two f]
(a b c : f)
(a_ne_zero : a ≠ myfld.zero) :
quadratic_subst f (quadratic_formula_alt f a b c a_ne_zero) a b c = myfld.zero
theorem
quadratic_solution_unique
(f : Type)
[myfld f]
[fld_with_sqrt f]
[fld_not_char_two f]
(a b c x : f)
(a_ne_zero : a ≠ myfld.zero) :
x ≠ quadratic_formula f a b c a_ne_zero ∧ x ≠ quadratic_formula_alt f a b c a_ne_zero → quadratic_subst f x a b c ≠ myfld.zero
theorem
quadratic_factorize
(f : Type)
[myfld f]
[fld_with_sqrt f]
[fld_not_char_two f]
(b c x : f) :
(x .+ .- (quadratic_formula f myfld.one b c myfld.zero_distinct_one)) .* (x .+ .- (quadratic_formula_alt f myfld.one b c myfld.zero_distinct_one)) = quadratic_subst f x myfld.one b c