Built with Alectryon, running Coq+SerAPI v8.10.0+0.7.0. Coq sources are in this panel; goals and messages will appear in the other. Bubbles () indicate interactive fragments: hover for details, tap to reveal contents. Use Ctrl+↑ Ctrl+↓ to navigate, Ctrl+🖱️ to focus.
(************************************************************************)
(*         *   The Coq Proof Assistant / The Coq Development Team       *)
(*  v      *   INRIA, CNRS and contributors - Copyright 1999-2018       *)
(* <O___,, *       (see CREDITS file for the list of authors)           *)
(*   \VV/  **************************************************************)
(*    //   *    This file is distributed under the terms of the         *)
(*         *     GNU Lesser General Public License Version 2.1          *)
(*         *     (see LICENSE file for the text of the license)         *)
(************************************************************************)

Require Import Rbase.
Require Import Rfunctions.
Require Import SeqSeries.
Require Export Rtrigo_fun.
Require Export Rtrigo_def.
Require Export Rtrigo_alt.
Require Export Cos_rel.
Require Export Cos_plus.
Require Import ZArith_base.
Require Import Zcomplements.
Require Import Lra.
Require Import Ranalysis1.
Require Import Rsqrt_def. 
Require Import PSeries_reg.

Local Open Scope nat_scope.
Local Open Scope R_scope.


forall fn : nat -> R -> R, fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N)) -> CVN_R fn

forall fn : nat -> R -> R, fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N)) -> CVN_R fn
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal

CVN_r fn r
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal

(r : R) <> 0 -> CVN_r fn r
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0

{An : nat -> R & {l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (An k)) n) l /\ (forall (n : nat) (y : R), Boule 0 r y -> Rabs (fn n y) <= An n)}}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0

{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l /\ (forall (n : nat) (y : R), Boule 0 r y -> Rabs (fn n y) <= / INR (fact (2 * n)) * r ^ (2 * n))}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0

{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l} -> {l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l /\ (forall (n : nat) (y : R), Boule 0 r y -> Rabs (fn n y) <= / INR (fact (2 * n)) * r ^ (2 * n))}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) x

{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l /\ (forall (n : nat) (y : R), Boule 0 r y -> Rabs (fn n y) <= / INR (fact (2 * n)) * r ^ (2 * n))}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) x

Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) x /\ (forall (n : nat) (y : R), Boule 0 r y -> Rabs (fn n y) <= / INR (fact (2 * n)) * r ^ (2 * n))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) x

Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) x
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) x
forall (n : nat) (y : R), Boule 0 r y -> Rabs (fn n y) <= / INR (fact (2 * n)) * r ^ (2 * n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) x

forall (n : nat) (y : R), Boule 0 r y -> Rabs (fn n y) <= / INR (fact (2 * n)) * r ^ (2 * n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y

Rabs ((-1) ^ n) * Rabs (/ INR (fact (2 * n))) * Rabs (y ^ (2 * n)) <= / INR (fact (2 * n)) * r ^ (2 * n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y

Rabs (/ INR (fact (2 * n))) * Rabs (y ^ (2 * n)) <= / INR (fact (2 * n)) * r ^ (2 * n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y

0 < / INR (fact (2 * n)) -> Rabs (/ INR (fact (2 * n))) * Rabs (y ^ (2 * n)) <= / INR (fact (2 * n)) * r ^ (2 * n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
0 < / INR (fact (2 * n))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
H1:0 < / INR (fact (2 * n))

/ INR (fact (2 * n)) * Rabs (y ^ (2 * n)) <= / INR (fact (2 * n)) * r ^ (2 * n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
0 < / INR (fact (2 * n))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
H1:0 < / INR (fact (2 * n))

0 <= / INR (fact (2 * n))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
H1:0 < / INR (fact (2 * n))
Rabs (y ^ (2 * n)) <= r ^ (2 * n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
0 < / INR (fact (2 * n))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
H1:0 < / INR (fact (2 * n))

Rabs (y ^ (2 * n)) <= r ^ (2 * n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
0 < / INR (fact (2 * n))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
H1:0 < / INR (fact (2 * n))

Rabs (Rabs y) <= r
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
0 < / INR (fact (2 * n))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
H1:0 < / INR (fact (2 * n))

Rabs y <= r
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
0 < / INR (fact (2 * n))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Rabs y < r
H1:0 < / INR (fact (2 * n))

Rabs y <= r
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y
0 < / INR (fact (2 * n))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
x:R
p:Un_cv (fun n0 : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n0) x
n:nat
y:R
H0:Boule 0 r y

0 < / INR (fact (2 * n))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0

{l : R | Un_cv (fun n : nat => sum_f_R0 (fun k : nat => Rabs (/ INR (fact (2 * k)) * r ^ (2 * k))) n) l}
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0

forall n : nat, Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
Un_cv (fun n : nat => Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))) 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
n:nat

/ INR (fact (2 * n)) * r ^ (2 * n) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
Un_cv (fun n : nat => Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))) 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
n:nat

/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
n:nat
r ^ (2 * n) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
Un_cv (fun n : nat => Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))) 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
n:nat

INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
n:nat
r ^ (2 * n) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
Un_cv (fun n : nat => Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))) 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
n:nat

r ^ (2 * n) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
Un_cv (fun n : nat => Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))) 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0

Un_cv (fun n : nat => Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))) 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:Un_cv (fun n : nat => Rabs (cos_n (S n) / cos_n n)) 0

Un_cv (fun n : nat => Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))) 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0

exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))) 0 < eps
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0

0 < eps / r² -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))) 0 < eps
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n : nat, (n >= N0)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps / r²

exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))) 0 < eps
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat

R_dist (Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))) 0 < eps
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps / r²

Rabs (Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n))) - 0) < eps
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) = Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

0 < / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ r² * Rabs (r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < / r² * eps
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) = Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

/ r² * Rabs (r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < / r² * eps
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) = Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (/ r²) * Rabs (r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < / r² * eps
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ r²) = / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) = Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (1 * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < / r² * eps
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ r²) = / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) = Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r² <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ r²) = / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) = Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (/ r²) = / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) = Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

/ Rabs r² = / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) = Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

/ r² = / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) = Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r² >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) = Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r² <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) = Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r² * Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) = Rabs (Rabs (/ INR (fact (2 * S n)) * r ^ (2 * S n)) / Rabs (/ INR (fact (2 * n)) * r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (/ ((-1) ^ n * / INR (fact (2 * n)))) * r² = Rabs (Rabs (r ^ (2 * S n))) * Rabs (/ (Rabs (/ INR (fact (2 * n))) * Rabs (r ^ (2 * n))))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

/ Rabs ((-1) ^ n * / INR (fact (2 * n))) * r² = Rabs (Rabs (r ^ (2 * S n))) * Rabs (/ (Rabs (/ INR (fact (2 * n))) * Rabs (r ^ (2 * n))))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (/ / INR (fact (2 * n))) * r² = Rabs (Rabs (r ^ (2 * S n))) * Rabs (/ (Rabs (/ INR (fact (2 * n))) * Rabs (r ^ (2 * n))))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (INR (fact (2 * n))) * r² = Rabs (Rabs (r ^ (2 * S n))) * Rabs (/ (Rabs (/ INR (fact (2 * n))) * Rabs (r ^ (2 * n))))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (INR (fact (2 * n))) * r² = Rabs (Rabs (r ^ (2 * S n))) * Rabs (/ Rabs (/ INR (fact (2 * n))) * / Rabs (r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (INR (fact (2 * n))) * r² = Rabs (Rabs (r ^ (2 * S n))) * Rabs (/ / Rabs (INR (fact (2 * n))) * / Rabs (r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (INR (fact (2 * n))) * r² = Rabs (Rabs (r ^ (2 * S n))) * Rabs (Rabs (INR (fact (2 * n))) * / Rabs (r ^ (2 * n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r² = Rabs (/ Rabs (r ^ (2 * n))) * Rabs (Rabs (r ^ (2 * S n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r² = / Rabs (Rabs (r ^ (2 * n))) * Rabs (Rabs (r ^ (2 * S n)))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r² = / r ^ (2 * n) * r ^ (2 * S n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * S n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r² = / r ^ (2 * n) * (r ^ (2 * n) * r * r)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * n) * r * r = r ^ (2 * S n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * S n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r² = 1 * r * r
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * n) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * n) * r * r = r ^ (2 * S n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * S n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r ^ (2 * n) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * n) * r * r = r ^ (2 * S n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * S n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r ^ (2 * n) * r * r = r ^ (2 * S n)
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * S n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r ^ (2 * n) * r * r = r ^ S (S (2 * n))
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
S (S (2 * n)) = (2 * S n)%nat
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * S n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

S (S (2 * n)) = (2 * S n)%nat
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * S n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r ^ (2 * S n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
r ^ (2 * n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

r ^ (2 * n) >= 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (/ INR (fact (2 * n))) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

Rabs (r ^ (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

(-1) ^ n * / INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

(-1) ^ n <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²
/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps0
eps:R
H1:eps > 0
H2:0 < eps / r²
N0:nat
H3:forall n0 : nat, (n0 >= N0)%nat -> R_dist (Rabs ((-1) ^ S n0 / INR (fact (2 * S n0)) / ((-1) ^ n0 / INR (fact (2 * n0))))) 0 < eps / r²
n:nat
H4:(n >= N0)%nat
H5:Rabs (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n)))) - 0) < eps / r²

/ INR (fact (2 * n)) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0

0 < eps / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0

0 < eps
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0
0 < / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
hyp_r:(r : R) <> 0
H0:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (Rabs ((-1) ^ S n / INR (fact (2 * S n)) / ((-1) ^ n / INR (fact (2 * n))))) 0 < eps0
eps:R
H1:eps > 0

0 < / r²
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal
(r : R) <> 0
fn:nat -> R -> R
H:fn = (fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N))
r:posreal

(r : R) <> 0
assert (H0 := cond_pos r); red in |- *; intro; rewrite H1 in H0; elim (Rlt_irrefl _ H0). Qed. (**********)

continuity cos

continuity cos
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R

continuity cos
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R

CVN_R fn -> continuity cos
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn

(forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}) -> continuity cos
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}

(forall n : nat, continuity (fn n)) -> continuity cos
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)

(forall x : R, cos x = SFL fn cv x) -> continuity cos
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
forall x : R, cos x = SFL fn cv x
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
H0:forall x : R, cos x = SFL fn cv x

(continuity (SFL fn cv) -> continuity cos) -> continuity cos
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
H0:forall x : R, cos x = SFL fn cv x
continuity (SFL fn cv) -> continuity cos
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
forall x : R, cos x = SFL fn cv x
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
H0:forall x : R, cos x = SFL fn cv x
H1:continuity (SFL fn cv) -> continuity cos

continuity (SFL fn cv)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
H0:forall x : R, cos x = SFL fn cv x
continuity (SFL fn cv) -> continuity cos
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
forall x : R, cos x = SFL fn cv x
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
H0:forall x : R, cos x = SFL fn cv x

continuity (SFL fn cv) -> continuity cos
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
forall x : R, cos x = SFL fn cv x
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x0 : R, {l : R | Un_cv (fun N : nat => SP fn N x0) l}
H:forall n : nat, continuity (fn n)
H0:forall x0 : R, cos x0 = SFL fn cv x0
H1:forall x0 eps0 : R, eps0 > 0 -> exists alp : R, alp > 0 /\ (forall x1 : R, D_x no_cond x0 x1 /\ Rabs (x1 - x0) < alp -> Rabs (SFL fn cv x1 - SFL fn cv x0) < eps0)
x, eps:R
H2:eps > 0

exists alp : R, alp > 0 /\ (forall x0 : R, D_x no_cond x x0 /\ Rabs (x0 - x) < alp -> Rabs (cos x0 - cos x) < eps)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
forall x : R, cos x = SFL fn cv x
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x1 : R) => (-1) ^ N / INR (fact (2 * N)) * x1 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x1 : R, {l : R | Un_cv (fun N : nat => SP fn N x1) l}
H:forall n : nat, continuity (fn n)
H0:forall x1 : R, cos x1 = SFL fn cv x1
H1:forall x1 eps0 : R, eps0 > 0 -> exists alp : R, alp > 0 /\ (forall x2 : R, D_x no_cond x1 x2 /\ Rabs (x2 - x1) < alp -> Rabs (SFL fn cv x2 - SFL fn cv x1) < eps0)
x, eps:R
H2:eps > 0
x0:R
H3:x0 > 0 /\ (forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (SFL fn cv x1 - SFL fn cv x) < eps)

exists alp : R, alp > 0 /\ (forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < alp -> Rabs (cos x1 - cos x) < eps)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
forall x : R, cos x = SFL fn cv x
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x1 : R) => (-1) ^ N / INR (fact (2 * N)) * x1 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x1 : R, {l : R | Un_cv (fun N : nat => SP fn N x1) l}
H:forall n : nat, continuity (fn n)
H0:forall x1 : R, cos x1 = SFL fn cv x1
H1:forall x1 eps0 : R, eps0 > 0 -> exists alp : R, alp > 0 /\ (forall x2 : R, D_x no_cond x1 x2 /\ Rabs (x2 - x1) < alp -> Rabs (SFL fn cv x2 - SFL fn cv x1) < eps0)
x, eps:R
H2:eps > 0
x0:R
H3:x0 > 0 /\ (forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (SFL fn cv x1 - SFL fn cv x) < eps)

x0 > 0 /\ (forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (cos x1 - cos x) < eps)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
forall x : R, cos x = SFL fn cv x
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x1 : R) => (-1) ^ N / INR (fact (2 * N)) * x1 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x1 : R, {l : R | Un_cv (fun N : nat => SP fn N x1) l}
H:forall n : nat, continuity (fn n)
H0:forall x1 : R, cos x1 = SFL fn cv x1
H1:forall x1 eps0 : R, eps0 > 0 -> exists alp : R, alp > 0 /\ (forall x2 : R, D_x no_cond x1 x2 /\ Rabs (x2 - x1) < alp -> Rabs (SFL fn cv x2 - SFL fn cv x1) < eps0)
x, eps:R
H2:eps > 0
x0:R
H3:x0 > 0 /\ (forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (SFL fn cv x1 - SFL fn cv x) < eps)
H4:x0 > 0
H5:forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (SFL fn cv x1 - SFL fn cv x) < eps

x0 > 0 /\ (forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (cos x1 - cos x) < eps)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
forall x : R, cos x = SFL fn cv x
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x1 : R) => (-1) ^ N / INR (fact (2 * N)) * x1 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x1 : R, {l : R | Un_cv (fun N : nat => SP fn N x1) l}
H:forall n : nat, continuity (fn n)
H0:forall x1 : R, cos x1 = SFL fn cv x1
H1:forall x1 eps0 : R, eps0 > 0 -> exists alp : R, alp > 0 /\ (forall x2 : R, D_x no_cond x1 x2 /\ Rabs (x2 - x1) < alp -> Rabs (SFL fn cv x2 - SFL fn cv x1) < eps0)
x, eps:R
H2:eps > 0
x0:R
H3:x0 > 0 /\ (forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (SFL fn cv x1 - SFL fn cv x) < eps)
H4:x0 > 0
H5:forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (SFL fn cv x1 - SFL fn cv x) < eps

x0 > 0
fn:=fun (N : nat) (x1 : R) => (-1) ^ N / INR (fact (2 * N)) * x1 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x1 : R, {l : R | Un_cv (fun N : nat => SP fn N x1) l}
H:forall n : nat, continuity (fn n)
H0:forall x1 : R, cos x1 = SFL fn cv x1
H1:forall x1 eps0 : R, eps0 > 0 -> exists alp : R, alp > 0 /\ (forall x2 : R, D_x no_cond x1 x2 /\ Rabs (x2 - x1) < alp -> Rabs (SFL fn cv x2 - SFL fn cv x1) < eps0)
x, eps:R
H2:eps > 0
x0:R
H3:x0 > 0 /\ (forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (SFL fn cv x1 - SFL fn cv x) < eps)
H4:x0 > 0
H5:forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (SFL fn cv x1 - SFL fn cv x) < eps
forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (cos x1 - cos x) < eps
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
forall x : R, cos x = SFL fn cv x
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x1 : R) => (-1) ^ N / INR (fact (2 * N)) * x1 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x1 : R, {l : R | Un_cv (fun N : nat => SP fn N x1) l}
H:forall n : nat, continuity (fn n)
H0:forall x1 : R, cos x1 = SFL fn cv x1
H1:forall x1 eps0 : R, eps0 > 0 -> exists alp : R, alp > 0 /\ (forall x2 : R, D_x no_cond x1 x2 /\ Rabs (x2 - x1) < alp -> Rabs (SFL fn cv x2 - SFL fn cv x1) < eps0)
x, eps:R
H2:eps > 0
x0:R
H3:x0 > 0 /\ (forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (SFL fn cv x1 - SFL fn cv x) < eps)
H4:x0 > 0
H5:forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (SFL fn cv x1 - SFL fn cv x) < eps

forall x1 : R, D_x no_cond x x1 /\ Rabs (x1 - x) < x0 -> Rabs (cos x1 - cos x) < eps
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)
forall x : R, cos x = SFL fn cv x
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
H:forall n : nat, continuity (fn n)

forall x : R, cos x = SFL fn cv x
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x0 : R) => (-1) ^ N / INR (fact (2 * N)) * x0 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x0 : R, {l : R | Un_cv (fun N : nat => SP fn N x0) l}
H:forall n : nat, continuity (fn n)
x:R

(let (a, _) := exist_cos x² in a) = (let (a, _) := cv x in a)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n : nat, continuity (fn n)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:cos_in x² x0

x0 = x1
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n : nat, continuity (fn n)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:cos_in x² x0

Un_cv ?Un x1
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n : nat, continuity (fn n)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:cos_in x² x0
Un_cv ?Un x0
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n : nat, continuity (fn n)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:cos_in x² x0

Un_cv (fun N : nat => SP fn N x) x0
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n : nat, continuity (fn n)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n) x0 < eps0
eps:R
H0:eps > 0

exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (SP fn n x) x0 < eps
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n : nat, continuity (fn n)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n) x0 < eps0
eps:R
H0:eps > 0
N0:nat
H1:forall n : nat, (n >= N0)%nat -> R_dist (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n) x0 < eps

exists N : nat, forall n : nat, (n >= N)%nat -> R_dist (SP fn n x) x0 < eps
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n0 : nat, continuity (fn n0)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n0) x0 < eps0
eps:R
H0:eps > 0
N0:nat
H1:forall n0 : nat, (n0 >= N0)%nat -> R_dist (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n0) x0 < eps
n:nat
H2:(n >= N0)%nat

R_dist (SP fn n x) x0 < eps
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n0 : nat, continuity (fn n0)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n0) x0 < eps0
eps:R
H0:eps > 0
N0:nat
H1:forall n0 : nat, (n0 >= N0)%nat -> Rabs (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n0 - x0) < eps
n:nat
H2:(n >= N0)%nat

Rabs (sum_f_R0 (fun k : nat => fn k x) n - x0) < eps
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n0 : nat, continuity (fn n0)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n0) x0 < eps0
eps:R
H0:eps > 0
N0:nat
H1:forall n0 : nat, (n0 >= N0)%nat -> Rabs (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n0 - x0) < eps
n:nat
H2:(n >= N0)%nat

Rabs (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n - x0) < eps
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n0 : nat, continuity (fn n0)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n0) x0 < eps0
eps:R
H0:eps > 0
N0:nat
H1:forall n0 : nat, (n0 >= N0)%nat -> Rabs (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n0 - x0) < eps
n:nat
H2:(n >= N0)%nat
sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n = sum_f_R0 (fun k : nat => fn k x) n
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n0 : nat, continuity (fn n0)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n0) x0 < eps0
eps:R
H0:eps > 0
N0:nat
H1:forall n0 : nat, (n0 >= N0)%nat -> Rabs (sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n0 - x0) < eps
n:nat
H2:(n >= N0)%nat

sum_f_R0 (fun i : nat => cos_n i * x² ^ i) n = sum_f_R0 (fun k : nat => fn k x) n
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n0 : nat, continuity (fn n0)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (sum_f_R0 (fun i0 : nat => cos_n i0 * x² ^ i0) n0) x0 < eps0
eps:R
H0:eps > 0
N0:nat
H1:forall n0 : nat, (n0 >= N0)%nat -> Rabs (sum_f_R0 (fun i0 : nat => cos_n i0 * x² ^ i0) n0 - x0) < eps
n:nat
H2:(n >= N0)%nat
i:nat
H3:(i <= n)%nat

cos_n i * x² ^ i = fn i x
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x2 : R) => (-1) ^ N / INR (fact (2 * N)) * x2 ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x2 : R, {l : R | Un_cv (fun N : nat => SP fn N x2) l}
H:forall n0 : nat, continuity (fn n0)
x, x1:R
HUn:Un_cv (fun N : nat => SP fn N x) x1
x0:R
Hcos:forall eps0 : R, eps0 > 0 -> exists N : nat, forall n0 : nat, (n0 >= N)%nat -> R_dist (sum_f_R0 (fun i0 : nat => cos_n i0 * x² ^ i0) n0) x0 < eps0
eps:R
H0:eps > 0
N0:nat
H1:forall n0 : nat, (n0 >= N0)%nat -> Rabs (sum_f_R0 (fun i0 : nat => cos_n i0 * x² ^ i0) n0 - x0) < eps
n:nat
H2:(n >= N0)%nat
i:nat
H3:(i <= n)%nat

x² ^ i = x ^ (2 * i)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}

forall n : nat, continuity (fn n)
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
n:nat

continuity (fct_cte ((-1) ^ n / INR (fact (2 * n))) * pow_fct (2 * n))
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
n:nat

continuity (fct_cte ((-1) ^ n / INR (fact (2 * n))))
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
n:nat
continuity (pow_fct (2 * n))
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
cv:forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
n:nat

continuity (pow_fct (2 * n))
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn
forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
X:CVN_R fn

forall x : R, {l : R | Un_cv (fun N : nat => SP fn N x) l}
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R
CVN_R fn
fn:=fun (N : nat) (x : R) => (-1) ^ N / INR (fact (2 * N)) * x ^ (2 * N):nat -> R -> R

CVN_R fn
apply CVN_R_cos; unfold fn in |- *; reflexivity. Qed.

sin (7 / 8) > cos (7 / 8)

sin (7 / 8) > cos (7 / 8)
lo1:0 <= 7 / 8

sin (7 / 8) > cos (7 / 8)
lo1:0 <= 7 / 8
up1:7 / 8 <= 4

sin (7 / 8) > cos (7 / 8)
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8

sin (7 / 8) > cos (7 / 8)
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2

sin (7 / 8) > cos (7 / 8)
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2
lower:sin_approx (7 / 8) (2 * 0 + 1) <= sin (7 / 8)

sin (7 / 8) > cos (7 / 8)
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2
lower:sin_approx (7 / 8) (2 * 0 + 1) <= sin (7 / 8)
upper:cos (7 / 8) <= cos_approx (7 / 8) (2 * (0 + 1))

sin (7 / 8) > cos (7 / 8)
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2
lower:sin_approx (7 / 8) (2 * 0 + 1) <= sin (7 / 8)
upper:cos (7 / 8) <= cos_approx (7 / 8) (2 * (0 + 1))

cos_approx (7 / 8) (2 * (0 + 1)) < sin (7 / 8)
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2
lower:sin_approx (7 / 8) (2 * 0 + 1) <= sin (7 / 8)
upper:cos (7 / 8) <= cos_approx (7 / 8) (2 * (0 + 1))

cos_approx (7 / 8) (2 * (0 + 1)) < sin_approx (7 / 8) (2 * 0 + 1)
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2
lower:sin_approx (7 / 8) (2 * 0 + 1) <= sin (7 / 8)
upper:cos (7 / 8) <= cos_approx (7 / 8) (2 * (0 + 1))

sum_f_R0 (cos_term (7 / 8)) (2 * (0 + 1)) < sum_f_R0 (sin_term (7 / 8)) (2 * 0 + 1)
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2
lower:sin_approx (7 / 8) (2 * 0 + 1) <= sin (7 / 8)
upper:cos (7 / 8) <= cos_approx (7 / 8) (2 * (0 + 1))

cos_term (7 / 8) 0 + cos_term (7 / 8) 1 + cos_term (7 / 8) 2 < sin_term (7 / 8) 0 + sin_term (7 / 8) 1
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2
lower:sin_approx (7 / 8) (2 * 0 + 1) <= sin (7 / 8)
upper:cos (7 / 8) <= cos_approx (7 / 8) (2 * (0 + 1))

(-1) ^ 0 * ((7 / 8) ^ (2 * 0) / IZR (Z.of_nat 1)) + (-1) ^ 1 * ((7 / 8) ^ (2 * 1) / IZR (Z.of_nat 2)) + (-1) ^ 2 * ((7 / 8) ^ (2 * 2) / IZR (Z.of_nat 24)) < (-1) ^ 0 * ((7 / 8) ^ (2 * 0 + 1) / IZR (Z.of_nat 1)) + (-1) ^ 1 * ((7 / 8) ^ (2 * 1 + 1) / IZR (Z.of_nat 6))
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2
lower:sin_approx (7 / 8) (2 * 0 + 1) <= sin (7 / 8)
upper:cos (7 / 8) <= cos_approx (7 / 8) (2 * (0 + 1))

(-1) ^ 0 * ((7 / 8) ^ 0 / 1) + (-1) ^ 1 * ((7 / 8) ^ 2 / 2) + (-1) ^ 2 * ((7 / 8) ^ 4 / 24) < (-1) ^ 0 * ((7 / 8) ^ 1 / 1) + (-1) ^ 1 * ((7 / 8) ^ 3 / 6)
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2
lower:sin_approx (7 / 8) (2 * 0 + 1) <= sin (7 / 8)
upper:cos (7 / 8) <= cos_approx (7 / 8) (2 * (0 + 1))

8073344 / 12582912 < 18760 / 24576
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2
lower:sin_approx (7 / 8) (2 * 0 + 1) <= sin (7 / 8)
upper:cos (7 / 8) <= cos_approx (7 / 8) (2 * (0 + 1))

24576 * (8073344 / 12582912) * 12582912 < 18760 * 12582912
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2
lower:sin_approx (7 / 8) (2 * 0 + 1) <= sin (7 / 8)
upper:cos (7 / 8) <= cos_approx (7 / 8) (2 * (0 + 1))

24576 * 8073344 < 18760 * 12582912
lo1:0 <= 7 / 8
up1:7 / 8 <= 4
lo:-2 <= 7 / 8
up:7 / 8 <= 2
lower:sin_approx (7 / 8) (2 * 0 + 1) <= sin (7 / 8)
upper:cos (7 / 8) <= cos_approx (7 / 8) (2 * (0 + 1))

IZR (24576 * 8073344) < IZR (18760 * 12582912)
apply IZR_lt; reflexivity. Qed.

{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}

continuity (fun r : R => - cos r)
cc:continuity (fun r : R => - cos r)
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)

{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)

0 < cos (7 / 8)
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
int78:-2 <= 7 / 8 <= 2

0 < cos (7 / 8)
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
lower:-2 <= 7 / 8
upper:7 / 8 <= 2

0 < cos (7 / 8)
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
lower:-2 <= 7 / 8
upper:7 / 8 <= 2

cos_approx (7 / 8) (2 * 0 + 1) <= cos (7 / 8) -> cos (7 / 8) <= cos_approx (7 / 8) (2 * (0 + 1)) -> 0 < cos (7 / 8)
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
lower:-2 <= 7 / 8
upper:7 / 8 <= 2

(-1) ^ 0 * ((7 / 8) ^ (2 * 0) / INR (fact (2 * 0))) + (-1) ^ 1 * ((7 / 8) ^ (2 * 1) / INR (fact (2 * 1))) <= cos (7 / 8) -> cos (7 / 8) <= (-1) ^ 0 * ((7 / 8) ^ (2 * 0) / INR (fact (2 * 0))) + (-1) ^ 1 * ((7 / 8) ^ (2 * 1) / INR (fact (2 * 1))) + (-1) ^ 2 * ((7 / 8) ^ (2 * 2) / INR (fact (2 * 2))) -> 0 < cos (7 / 8)
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
lower:-2 <= 7 / 8
upper:7 / 8 <= 2
cl:(-1) ^ 0 * ((7 / 8) ^ (2 * 0) / INR (fact (2 * 0))) + (-1) ^ 1 * ((7 / 8) ^ (2 * 1) / INR (fact (2 * 1))) <= cos (7 / 8)

0 < 1 * (1 / 1) + -1 * 1 * (7 / 8 * (7 / 8 * 1) / (1 + 1))
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)

{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)

cos (7 / 4) < 0
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
cun:cos (7 / 4) < 0
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)

cos (7 / 8 + 7 / 8) < 0
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
cun:cos (7 / 4) < 0
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)

cos (7 / 8) * cos (7 / 8) - sin (7 / 8) * sin (7 / 8) < 0
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
cun:cos (7 / 4) < 0
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)

cos (7 / 8) < sin (7 / 8)
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
0 <= cos (7 / 8)
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
0 <= sin (7 / 8)
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
cun:cos (7 / 4) < 0
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)

0 <= cos (7 / 8)
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
0 <= sin (7 / 8)
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
cun:cos (7 / 4) < 0
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)

0 <= sin (7 / 8)
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
cun:cos (7 / 4) < 0
{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
cc:continuity (fun r : R => - cos r)
cvp:0 < cos (7 / 8)
cun:cos (7 / 4) < 0

{z : R | 7 / 8 <= z <= 7 / 4 /\ - cos z = 0}
apply IVT; auto; lra. Qed. Definition PI2 := proj1_sig PI_2_aux. Definition PI := 2 * PI2.

cos PI2 = 0

forall x : R, 7 / 8 <= x <= 7 / 4 /\ - cos x = 0 -> cos x = 0
intros x [_ q]; rewrite <- (Ropp_involutive (cos x)), q; apply Ropp_0. Qed.

7 / 8 <= PI2 <= 7 / 4
unfold PI2; case PI_2_aux; simpl; tauto. Qed. (**********)

forall x y : R, cos (x - y) = cos x * cos y + sin x * sin y

forall x y : R, cos (x - y) = cos x * cos y + sin x * sin y
x, y:R

cos x * cos (- y) - sin x * sin (- y) = cos x * cos y + sin x * sin y
rewrite <- cos_sym; rewrite sin_antisym; ring. Qed. (**********)

forall x : R, (sin x)² + (cos x)² = 1

forall x : R, (sin x)² + (cos x)² = 1
intro; unfold Rsqr in |- *; rewrite Rplus_comm; rewrite <- (cos_minus x x); unfold Rminus in |- *; rewrite Rplus_opp_r; apply cos_0. Qed.

forall x : R, (cos x)² = 1 - (sin x)²

forall x : R, (cos x)² = 1 - (sin x)²
intros x; rewrite <- (sin2_cos2 x); ring. Qed.

forall x : R, (sin x)² = 1 - (cos x)²

forall x : R, (sin x)² = 1 - (cos x)²
x:R
H1:(cos x)² = 1 - (sin x)²

(sin x)² = 1 - (1 - (sin x)²)
unfold Rminus in |- *; rewrite Ropp_plus_distr; rewrite <- Rplus_assoc; rewrite Rplus_opp_r; rewrite Rplus_0_l; symmetry in |- *; apply Ropp_involutive. Qed. (**********)

cos (PI / 2) = 0

cos (PI / 2) = 0
unfold PI; generalize cos_pi2; replace ((2 * PI2)/2) with PI2 by field; tauto. Qed.

forall x : R, 0 < x < 2 -> 0 < sin x
x:R
int1:0 < x
int2:x < 2

0 < sin x
x:R
int1:0 < x
int2:x < 2
lo:0 <= x

0 < sin x
x:R
int1:0 < x
int2:x < 2
lo:0 <= x
up:x <= 4

0 < sin x
x:R
int1:0 < x
int2:x < 2
t:sin_approx x (2 * 0 + 1) <= sin x

0 < sin x
x:R
int1:0 < x
int2:x < 2

0 < sin_approx x (2 * 0 + 1)
x:R
int1:0 < x
int2:x < 2

0 < 1 * (x * 1 / 1) + -1 * 1 * (x * (x * (x * 1)) / (1 + 1 + 1 + 1 + 1 + 1))
x:R
int1:0 < x
int2:x < 2

0 < x * (1 - x ^ 2 / 6)
x:R
int1:0 < x
int2:x < 2

x ^ 2 <= 4
x:R
int1:0 < x
int2:x < 2
t':x ^ 2 <= 4
0 < x * (1 - x ^ 2 / 6)
x:R
int1:0 < x
int2:x < 2

x ^ 2 <= 2 ^ 2
x:R
int1:0 < x
int2:x < 2
t':x ^ 2 <= 4
0 < x * (1 - x ^ 2 / 6)
x:R
int1:0 < x
int2:x < 2
t':x ^ 2 <= 4

0 < x * (1 - x ^ 2 / 6)
apply Rmult_lt_0_compat;[assumption | lra ]. Qed.

sin (PI / 2) = 1

sin PI2 = 1

0 < PI2 < 2
int':0 < PI2 < 2
sin PI2 = 1
int':0 < PI2 < 2

sin PI2 = 1
int':0 < PI2 < 2
lo2:0 < sin PI2

sin PI2 = 1
int':0 < PI2 < 2
lo2:0 < sin PI2

Rabs (sin PI2) = 1
int':0 < PI2 < 2
lo2:0 < sin PI2
t2:Rabs (sin PI2) = 1
sin PI2 = 1
int':0 < PI2 < 2
lo2:0 < sin PI2

(sin PI2)² = 1²
int':0 < PI2 < 2
lo2:0 < sin PI2
t2:Rabs (sin PI2) = 1
sin PI2 = 1
int':0 < PI2 < 2
lo2:0 < sin PI2
t2:Rabs (sin PI2) = 1

sin PI2 = 1
revert t2; rewrite Rabs_pos_eq;[| apply Rlt_le]; tauto. Qed.

PI > 0

PI > 0
unfold PI; destruct pi2_int; lra. Qed.

PI <= 4

PI <= 4
unfold PI; destruct pi2_int; lra. Qed. (**********)

PI <> 0

PI <> 0
red in |- *; intro; assert (H0 := PI_RGT_0); rewrite H in H0; elim (Rlt_irrefl _ H0). Qed. (**********)

cos PI = -1

cos PI = -1

cos (PI / 2 + PI / 2) = -1

PI / 2 + PI / 2 = PI

cos (PI / 2) * cos (PI / 2) - sin (PI / 2) * sin (PI / 2) = -1

PI / 2 + PI / 2 = PI

0 * 0 - 1 * 1 = -1

PI / 2 + PI / 2 = PI

PI / 2 + PI / 2 = PI
symmetry in |- *; apply double_var. Qed.

sin PI = 0

sin PI = 0
H:(sin PI)² + (cos PI)² = 1

sin PI = 0
H:(sin PI)² + (-1)² = 1

sin PI = 0
H:(sin PI)² + (- (1))² = 1

sin PI = 0
H:(sin PI)² + 1² = 1

sin PI = 0
H:(sin PI)² + 1 = 1

sin PI = 0
H:(sin PI)² + 1 = 1

(sin PI)² = 0 -> sin PI = 0
H:(sin PI)² + 1 = 1
(sin PI)² = 0
H:(sin PI)² + 1 = 1

(sin PI)² = 0
H:(sin PI)² + 1 = 1

1 + (sin PI)² = 1 + 0
rewrite Rplus_0_r; rewrite Rplus_comm; exact H. Qed.

forall (a : R) (n : nat), 0 <= a -> a <= PI -> sin_approx a (2 * n + 1) <= sin a <= sin_approx a (2 * (n + 1))

forall (a : R) (n : nat), 0 <= a -> a <= PI -> sin_approx a (2 * n + 1) <= sin a <= sin_approx a (2 * (n + 1))
a:R
n:nat
a0:0 <= a
api:a <= PI

0 <= a
a:R
n:nat
a0:0 <= a
api:a <= PI
a <= 4
a:R
n:nat
a0:0 <= a
api:a <= PI

a <= 4
apply Rle_trans with (1:= api) (2 := PI_4). Qed.

forall (a : R) (n : nat), - PI / 2 <= a -> a <= PI / 2 -> cos_approx a (2 * n + 1) <= cos a <= cos_approx a (2 * (n + 1))

forall (a : R) (n : nat), - PI / 2 <= a -> a <= PI / 2 -> cos_approx a (2 * n + 1) <= cos a <= cos_approx a (2 * (n + 1))
a:R
n:nat
lower:- PI / 2 <= a
upper:a <= PI / 2

-2 <= a
a:R
n:nat
lower:- PI / 2 <= a
upper:a <= PI / 2
a <= 2
a:R
n:nat
lower:- PI / 2 <= a
upper:a <= PI / 2

-2 <= - PI / 2
a:R
n:nat
lower:- PI / 2 <= a
upper:a <= PI / 2
a <= 2
a:R
n:nat
lower:- PI / 2 <= a
upper:a <= PI / 2

-2 * 2 <= - PI / 2 * 2
a:R
n:nat
lower:- PI / 2 <= a
upper:a <= PI / 2
a <= 2
a:R
n:nat
lower:- PI / 2 <= a
upper:a <= PI / 2

-2 * 2 <= - PI
a:R
n:nat
lower:- PI / 2 <= a
upper:a <= PI / 2
a <= 2
a:R
n:nat
lower:- PI / 2 <= a
upper:a <= PI / 2

a <= 2
a:R
n:nat
lower:- PI / 2 <= a
upper:a <= PI / 2

PI / 2 <= 2
a:R
n:nat
lower:- PI / 2 <= a
upper:a <= PI / 2

PI / 2 * 2 <= 2 * 2
a:R
n:nat
lower:- PI / 2 <= a
upper:a <= PI / 2

PI <= 2 * 2
generalize PI_4; intros; lra. Qed. (**********)

forall x : R, cos (x + PI) = - cos x

forall x : R, cos (x + PI) = - cos x
intro x; rewrite cos_plus; rewrite sin_PI; rewrite cos_PI; ring. Qed. (**********)

forall x : R, sin x = - cos (PI / 2 + x)

forall x : R, sin x = - cos (PI / 2 + x)
intro x; rewrite cos_plus; rewrite sin_PI2; rewrite cos_PI2; ring. Qed. (**********)

forall x y : R, sin (x + y) = sin x * cos y + cos x * sin y

forall x y : R, sin (x + y) = sin x * cos y + cos x * sin y
x, y:R

sin (x + y) = sin x * cos y + cos x * sin y
x, y:R

- cos (PI / 2 + (x + y)) = sin x * cos y + cos x * sin y
x, y:R

- (cos (PI / 2 + x) * cos y - sin (PI / 2 + x) * sin y) = sin x * cos y + cos x * sin y
x, y:R

- (cos (PI / 2 + x) * cos y - - cos (PI / 2 + (PI / 2 + x)) * sin y) = sin x * cos y + cos x * sin y
x, y:R

- (cos (PI / 2 + x) * cos y - - cos (x + PI) * sin y) = sin x * cos y + cos x * sin y
x, y:R
x + PI = PI / 2 + (PI / 2 + x)
x, y:R

- (cos (PI / 2 + x) * cos y - - - cos x * sin y) = sin x * cos y + cos x * sin y
x, y:R
x + PI = PI / 2 + (PI / 2 + x)
x, y:R

- (- sin x * cos y - - - cos x * sin y) = sin x * cos y + cos x * sin y
x, y:R
- sin x = cos (PI / 2 + x)
x, y:R
x + PI = PI / 2 + (PI / 2 + x)
x, y:R

- sin x = cos (PI / 2 + x)
x, y:R
x + PI = PI / 2 + (PI / 2 + x)
x, y:R

x + PI = PI / 2 + (PI / 2 + x)
pattern PI at 1 in |- *; rewrite (double_var PI); ring. Qed.

forall x y : R, sin (x - y) = sin x * cos y - cos x * sin y

forall x y : R, sin (x - y) = sin x * cos y - cos x * sin y
x, y:R

sin x * cos (- y) + cos x * sin (- y) = sin x * cos y + - (cos x * sin y)
rewrite <- cos_sym; rewrite sin_antisym; ring. Qed. (**********) Definition tan (x:R) : R := sin x / cos x.

forall x y : R, cos x <> 0 -> cos y <> 0 -> cos (x + y) <> 0 -> 1 - tan x * tan y <> 0 -> tan (x + y) = (tan x + tan y) / (1 - tan x * tan y)

forall x y : R, cos x <> 0 -> cos y <> 0 -> cos (x + y) <> 0 -> 1 - tan x * tan y <> 0 -> tan (x + y) = (tan x + tan y) / (1 - tan x * tan y)
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

(sin x * cos y + cos x * sin y) * / (cos x * cos y * (1 - sin x * / cos x * (sin y * / cos y))) = (sin x * / cos x + sin y * / cos y) * / (1 - sin x * / cos x * (sin y * / cos y))
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y * (1 - sin x * / cos x * (sin y * / cos y)) = cos x * cos y - sin x * sin y
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

(sin x * cos y + cos x * sin y) * (/ (cos x * cos y) * / (1 - sin x * / cos x * (sin y * / cos y))) = (sin x * / cos x + sin y * / cos y) * / (1 - sin x * / cos x * (sin y * / cos y))
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
1 - sin x * / cos x * (sin y * / cos y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y * (1 - sin x * / cos x * (sin y * / cos y)) = cos x * cos y - sin x * sin y
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

(sin x * / cos x + sin y * / cos y) * / (1 - sin x * / cos x * sin y * / cos y) = (sin x * / cos x + sin y * / cos y) * / (1 - sin x * / cos x * sin y * / cos y)
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
sin x * / cos x + sin y * / cos y = (sin x * cos y + cos x * sin y) * / (cos x * cos y)
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
1 - sin x * / cos x * (sin y * / cos y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y * (1 - sin x * / cos x * (sin y * / cos y)) = cos x * cos y - sin x * sin y
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

sin x * / cos x + sin y * / cos y = (sin x * cos y + cos x * sin y) * / (cos x * cos y)
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
1 - sin x * / cos x * (sin y * / cos y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y * (1 - sin x * / cos x * (sin y * / cos y)) = cos x * cos y - sin x * sin y
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

sin x * / cos x + sin y * / cos y = sin x * cos y * (/ cos x * / cos y) + cos x * sin y * (/ cos x * / cos y)
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
1 - sin x * / cos x * (sin y * / cos y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y * (1 - sin x * / cos x * (sin y * / cos y)) = cos x * cos y - sin x * sin y
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

/ cos x * sin x + sin y * / cos y = cos y * / cos x * / cos y * sin x + cos x * sin y * / cos x * / cos y
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
1 - sin x * / cos x * (sin y * / cos y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y * (1 - sin x * / cos x * (sin y * / cos y)) = cos x * cos y - sin x * sin y
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

cos x <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
1 - sin x * / cos x * (sin y * / cos y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y * (1 - sin x * / cos x * (sin y * / cos y)) = cos x * cos y - sin x * sin y
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
1 - sin x * / cos x * (sin y * / cos y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y * (1 - sin x * / cos x * (sin y * / cos y)) = cos x * cos y - sin x * sin y
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

cos x * cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
1 - sin x * / cos x * (sin y * / cos y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y * (1 - sin x * / cos x * (sin y * / cos y)) = cos x * cos y - sin x * sin y
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

1 - sin x * / cos x * (sin y * / cos y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x * cos y * (1 - sin x * / cos x * (sin y * / cos y)) = cos x * cos y - sin x * sin y
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

cos x * cos y * (1 - sin x * / cos x * (sin y * / cos y)) = cos x * cos y - sin x * sin y
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

1 * sin y * / cos y * - sin x * cos y = - (sin x * sin y)
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

- sin x * 1 = - sin x
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

cos y <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0
cos x <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x + y) <> 0
H2:1 - tan x * tan y <> 0

cos x <> 0
assumption. Qed. (*******************************************************)

Some properties of cos, sin and tan

(*******************************************************)


forall x : R, sin (2 * x) = 2 * sin x * cos x

forall x : R, sin (2 * x) = 2 * sin x * cos x
x:R

sin x * cos x + cos x * sin x = 2 * sin x * cos x
rewrite <- (Rmult_comm (sin x)); symmetry in |- *; rewrite Rmult_assoc; apply double. Qed.

forall x : R, cos (2 * x) = cos x * cos x - sin x * sin x

forall x : R, cos (2 * x) = cos x * cos x - sin x * sin x
intro x; rewrite double; apply cos_plus. Qed.

forall x : R, cos (2 * x) = 2 * cos x * cos x - 1

forall x : R, cos (2 * x) = 2 * cos x * cos x - 1
intro x; rewrite double; unfold Rminus in |- *; rewrite Rmult_assoc; rewrite cos_plus; generalize (sin2_cos2 x); rewrite double; intro H1; rewrite <- H1; ring_Rsqr. Qed.

forall x : R, cos (2 * x) = 1 - 2 * sin x * sin x

forall x : R, cos (2 * x) = 1 - 2 * sin x * sin x
x:R

cos (x + x) = 1 + - (sin x * sin x + sin x * sin x)
generalize (sin2_cos2 x); intro H1; rewrite <- H1; rewrite cos_plus; ring_Rsqr. Qed.

forall x : R, cos x <> 0 -> cos (2 * x) <> 0 -> 1 - tan x * tan x <> 0 -> tan (2 * x) = 2 * tan x / (1 - tan x * tan x)

forall x : R, cos x <> 0 -> cos (2 * x) <> 0 -> 1 - tan x * tan x <> 0 -> tan (2 * x) = 2 * tan x / (1 - tan x * tan x)
repeat rewrite double; intros; repeat rewrite double; rewrite double in H0; apply tan_plus; assumption. Qed.

forall x : R, sin (- x) = - sin x

forall x : R, sin (- x) = - sin x
apply sin_antisym. Qed.

forall x : R, cos (- x) = cos x

forall x : R, cos (- x) = cos x
intro; symmetry in |- *; apply cos_sym. Qed.

tan 0 = 0

tan 0 = 0

0 / 1 = 0
unfold Rdiv in |- *; apply Rmult_0_l. Qed.

forall x : R, tan (- x) = - tan x

forall x : R, tan (- x) = - tan x
x:R

- sin x * / cos x = - (sin x * / cos x)
apply Ropp_mult_distr_l_reverse. Qed.

forall x y : R, cos x <> 0 -> cos y <> 0 -> cos (x - y) <> 0 -> 1 + tan x * tan y <> 0 -> tan (x - y) = (tan x - tan y) / (1 + tan x * tan y)

forall x y : R, cos x <> 0 -> cos y <> 0 -> cos (x - y) <> 0 -> 1 + tan x * tan y <> 0 -> tan (x - y) = (tan x - tan y) / (1 + tan x * tan y)
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0

(tan x + tan (- y)) / (1 - tan x * tan (- y)) = (tan x + - tan y) / (1 + tan x * tan y)
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0
cos x <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0
cos (- y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0
cos (x + - y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0
1 - tan x * tan (- y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0

cos x <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0
cos (- y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0
cos (x + - y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0
1 - tan x * tan (- y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0

cos (- y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0
cos (x + - y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0
1 - tan x * tan (- y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0

cos (x + - y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0
1 - tan x * tan (- y) <> 0
x, y:R
H:cos x <> 0
H0:cos y <> 0
H1:cos (x - y) <> 0
H2:1 + tan x * tan y <> 0

1 - tan x * tan (- y) <> 0
rewrite tan_neg; unfold Rminus in |- *; rewrite <- Ropp_mult_distr_l_reverse; rewrite Rmult_opp_opp; assumption. Qed.

cos (3 * (PI / 2)) = 0

cos (3 * (PI / 2)) = 0

cos (PI + PI / 2) = 0

PI + PI / 2 = 3 * (PI / 2)

PI + PI / 2 = 3 * (PI / 2)

PI / 2 + PI / 2 + PI / 2 = 3 * (PI / 2)
ring. Qed.

sin (2 * PI) = 0

sin (2 * PI) = 0
rewrite sin_2a; rewrite sin_PI; ring. Qed.

cos (2 * PI) = 1

cos (2 * PI) = 1
rewrite cos_2a; rewrite sin_PI; rewrite cos_PI; ring. Qed.

forall x : R, sin (x + PI) = - sin x

forall x : R, sin (x + PI) = - sin x
intro x; rewrite sin_plus; rewrite sin_PI; rewrite cos_PI; ring. Qed.

forall x : R, sin (PI - x) = sin x

forall x : R, sin (PI - x) = sin x
x:R

0 * cos x - -1 * sin x = sin x
ring. Qed.

forall (x : R) (k : nat), sin (x + 2 * INR k * PI) = sin x

forall (x : R) (k : nat), sin (x + 2 * INR k * PI) = sin x
x:R

sin (x + 2 * INR 0 * PI) = sin x
x:R
k:nat
Hreck:sin (x + 2 * INR k * PI) = sin x
sin (x + 2 * INR (S k) * PI) = sin x
x:R

sin x = sin x
x:R
k:nat
Hreck:sin (x + 2 * INR k * PI) = sin x
sin (x + 2 * INR (S k) * PI) = sin x
x:R
k:nat
Hreck:sin (x + 2 * INR k * PI) = sin x

sin (x + 2 * INR (S k) * PI) = sin x
x:R
k:nat
Hreck:sin (x + 2 * INR k * PI) = sin x

sin (x + 2 * INR k * PI + 2 * PI) = sin x
x:R
k:nat
Hreck:sin (x + 2 * INR k * PI) = sin x
x + 2 * INR k * PI + 2 * PI = x + 2 * INR (S k) * PI
x:R
k:nat
Hreck:sin (x + 2 * INR k * PI) = sin x

sin (x + 2 * INR k * PI) * 1 + cos (x + 2 * INR k * PI) * 0 = sin x
x:R
k:nat
Hreck:sin (x + 2 * INR k * PI) = sin x
x + 2 * INR k * PI + 2 * PI = x + 2 * INR (S k) * PI
x:R
k:nat
Hreck:sin (x + 2 * INR k * PI) = sin x

x + 2 * INR k * PI + 2 * PI = x + 2 * INR (S k) * PI
rewrite S_INR in |- *; ring. Qed.

forall (x : R) (k : nat), cos (x + 2 * INR k * PI) = cos x

forall (x : R) (k : nat), cos (x + 2 * INR k * PI) = cos x
x:R

cos (x + 2 * INR 0 * PI) = cos x
x:R
k:nat
Hreck:cos (x + 2 * INR k * PI) = cos x
cos (x + 2 * INR (S k) * PI) = cos x
x:R

cos x = cos x
x:R
k:nat
Hreck:cos (x + 2 * INR k * PI) = cos x
cos (x + 2 * INR (S k) * PI) = cos x
x:R
k:nat
Hreck:cos (x + 2 * INR k * PI) = cos x

cos (x + 2 * INR (S k) * PI) = cos x
x:R
k:nat
Hreck:cos (x + 2 * INR k * PI) = cos x

cos (x + 2 * INR k * PI + 2 * PI) = cos x
x:R
k:nat
Hreck:cos (x + 2 * INR k * PI) = cos x
x + 2 * INR k * PI + 2 * PI = x + 2 * INR (S k) * PI
x:R
k:nat
Hreck:cos (x + 2 * INR k * PI) = cos x

cos (x + 2 * INR k * PI) * 1 - sin (x + 2 * INR k * PI) * 0 = cos x
x:R
k:nat
Hreck:cos (x + 2 * INR k * PI) = cos x
x + 2 * INR k * PI + 2 * PI = x + 2 * INR (S k) * PI
x:R
k:nat
Hreck:cos (x + 2 * INR k * PI) = cos x

x + 2 * INR k * PI + 2 * PI = x + 2 * INR (S k) * PI
rewrite S_INR in |- *; ring. Qed.

forall x : R, sin (PI / 2 - x) = cos x

forall x : R, sin (PI / 2 - x) = cos x
intro x; rewrite sin_minus; rewrite sin_PI2; rewrite cos_PI2; ring. Qed.

forall x : R, cos (PI / 2 - x) = sin x

forall x : R, cos (PI / 2 - x) = sin x
intro x; rewrite cos_minus; rewrite sin_PI2; rewrite cos_PI2; ring. Qed.

forall x : R, cos x = sin (PI / 2 + x)

forall x : R, cos x = sin (PI / 2 + x)
intro x; rewrite sin_plus; rewrite sin_PI2; rewrite cos_PI2; ring. Qed.

0 < PI / 2

0 < PI / 2
unfold Rdiv in |- *; apply Rmult_lt_0_compat; [ apply PI_RGT_0 | apply Rinv_0_lt_compat; prove_sup ]. Qed.

forall x : R, -1 <= sin x <= 1

forall x : R, -1 <= sin x <= 1
x:R
Hle:-1 <= sin x

-1 <= sin x <= 1
x:R
Hnle:~ -1 <= sin x
-1 <= sin x <= 1
x:R
Hle:-1 <= sin x
Hle':sin x <= 1

-1 <= sin x <= 1
x:R
Hle:-1 <= sin x
Hnle':~ sin x <= 1
-1 <= sin x <= 1
x:R
Hnle:~ -1 <= sin x
-1 <= sin x <= 1
x:R
Hle:-1 <= sin x
Hnle':~ sin x <= 1

-1 <= sin x <= 1
x:R
Hnle:~ -1 <= sin x
-1 <= sin x <= 1
x:R
Hle:-1 <= sin x
Hnle':~ sin x <= 1

1 < sin x -> -1 <= sin x <= 1
x:R
Hle:-1 <= sin x
Hnle':~ sin x <= 1
1 < sin x
x:R
Hnle:~ -1 <= sin x
-1 <= sin x <= 1
x:R
Hle:-1 <= sin x
Hnle':~ sin x <= 1
H:1 < sin x
H0:1 < 1 + - (cos x)²

-1 <= sin x <= 1
x:R
Hle:-1 <= sin x
Hnle':~ sin x <= 1
1 < sin x
x:R
Hnle:~ -1 <= sin x
-1 <= sin x <= 1
x:R
Hle:-1 <= sin x
Hnle':~ sin x <= 1

1 < sin x
x:R
Hnle:~ -1 <= sin x
-1 <= sin x <= 1
x:R
Hnle:~ -1 <= sin x

-1 <= sin x <= 1
x:R
Hnle:~ -1 <= sin x

sin x < -1 -> -1 <= sin x <= 1
x:R
Hnle:~ -1 <= sin x
sin x < -1
x:R
Hnle:~ -1 <= sin x

sin x < -1
auto with real. Qed.

forall x : R, -1 <= cos x <= 1

forall x : R, -1 <= cos x <= 1
intro; rewrite <- sin_shift; apply SIN_bound. Qed.

forall x : R, ~ (cos x = 0 /\ sin x = 0)

forall x : R, ~ (cos x = 0 /\ sin x = 0)
intro; red in |- *; intro; elim H; intros; generalize (sin2_cos2 x); intro; rewrite H0 in H2; rewrite H1 in H2; repeat rewrite Rsqr_0 in H2; rewrite Rplus_0_r in H2; generalize Rlt_0_1; intro; rewrite <- H2 in H3; elim (Rlt_irrefl 0 H3). Qed.

forall x : R, cos x <> 0 \/ sin x <> 0

forall x : R, cos x <> 0 \/ sin x <> 0
x:R

cos x <> 0 \/ sin x <> 0
x:R
H:cos x = 0

cos x <> 0 \/ sin x <> 0
x:R
H:cos x <> 0
cos x <> 0 \/ sin x <> 0
x:R
H:cos x = 0

cos x <> 0 \/ sin x <> 0
x:R
H:cos x = 0

sin x <> 0
x:R
H:cos x = 0
H':sin x = 0

False
x:R
H:cos x = 0
H':sin x = 0

cos x = 0 /\ sin x = 0
now split. Qed. (*****************************************************************)

Using series definitions of cos and sin

(*****************************************************************)

Definition sin_lb (a:R) : R := sin_approx a 3.
Definition sin_ub (a:R) : R := sin_approx a 4.
Definition cos_lb (a:R) : R := cos_approx a 3.
Definition cos_ub (a:R) : R := cos_approx a 4.


forall a : R, 0 < a -> a <= PI / 2 -> 0 < sin_lb a

forall a : R, 0 < a -> a <= PI / 2 -> 0 < sin_lb a
a:R
H:0 < a
H0:a <= PI / 2

0 < sin_lb a
a:R
H:0 < a
H0:a <= PI / 2

0 < sum_f_R0 (fun i : nat => (-1) ^ i * (a ^ (2 * i + 1) / INR (fact (2 * i + 1)))) 3
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R

0 < sum_f_R0 (fun i : nat => (-1) ^ i * (a ^ (2 * i + 1) / INR (fact (2 * i + 1)))) 3
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R

0 < sum_f_R0 (fun i : nat => (-1) ^ i * Un i) 3
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R

(forall n : nat, Un (S n) < Un n) -> 0 < sum_f_R0 (fun i : nat => (-1) ^ i * Un i) 3
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
forall n : nat, Un (S n) < Un n
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
H1:forall n : nat, Un (S n) < Un n

0 < 1 * Un 0%nat + -1 * 1 * Un 1%nat + -1 * (-1 * 1) * Un 2%nat + -1 * (-1 * (-1 * 1)) * Un 3%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
forall n : nat, Un (S n) < Un n
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
H1:forall n : nat, Un (S n) < Un n

0 < Un 0%nat - Un 1%nat + (Un 2%nat - Un 3%nat)
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
forall n : nat, Un (S n) < Un n
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
H1:forall n : nat, Un (S n) < Un n

0 < Un 0%nat - Un 1%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
H1:forall n : nat, Un (S n) < Un n
0 < Un 2%nat - Un 3%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
forall n : nat, Un (S n) < Un n
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
H1:forall n : nat, Un (S n) < Un n

0 < Un 2%nat - Un 3%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
forall n : nat, Un (S n) < Un n
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R

forall n : nat, Un (S n) < Un n
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat

a ^ (2 * S n + 1) / INR (fact (2 * S n + 1)) < a ^ (2 * n + 1) / INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat

(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat -> a ^ (2 * S n + 1) / INR (fact (2 * S n + 1)) < a ^ (2 * n + 1) / INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

a ^ (2 * n + 1 + 2) / INR (fact (2 * n + 1 + 2)) < a ^ (2 * n + 1) / INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

0 < a ^ (2 * n + 1)
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a ^ 2 * / INR (fact (2 * n + 1 + 2)) < / INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

a ^ 2 * / INR (fact (2 * n + 1 + 2)) < / INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

0 < INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) * (a ^ 2 * / INR (fact (2 * S n + 1))) < INR (fact (2 * n + 1)) * / INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

0%nat <> fact (2 * n + 1)
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) * (a ^ 2 * / INR (fact (2 * S n + 1))) < INR (fact (2 * n + 1)) * / INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
H2:fact (2 * n + 1) <> 0%nat

0%nat <> fact (2 * n + 1)
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) * (a ^ 2 * / INR (fact (2 * S n + 1))) < INR (fact (2 * n + 1)) * / INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

INR (fact (2 * n + 1)) * (a ^ 2 * / INR (fact (2 * S n + 1))) < INR (fact (2 * n + 1)) * / INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

INR (fact (2 * n + 1)) * (a ^ 2 * / INR (fact (2 * S n + 1))) < 1
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

0 < INR (fact (2 * S n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) * (INR (fact (2 * n + 1)) * (a ^ 2 * / INR (fact (2 * S n + 1)))) < INR (fact (2 * S n + 1)) * 1
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

0%nat <> fact (2 * S n + 1)
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) * (INR (fact (2 * n + 1)) * (a ^ 2 * / INR (fact (2 * S n + 1)))) < INR (fact (2 * S n + 1)) * 1
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
H2:fact (2 * S n + 1) <> 0%nat

0%nat <> fact (2 * S n + 1)
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) * (INR (fact (2 * n + 1)) * (a ^ 2 * / INR (fact (2 * S n + 1)))) < INR (fact (2 * S n + 1)) * 1
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

INR (fact (2 * S n + 1)) * (INR (fact (2 * n + 1)) * (a ^ 2 * / INR (fact (2 * S n + 1)))) < INR (fact (2 * S n + 1)) * 1
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

INR (fact (2 * n + 1)) * (a ^ 2 * 1) < INR (fact (2 * S n + 1)) * 1
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

INR (fact (2 * n + 1)) * a ^ 2 <= INR (fact (2 * n + 1)) * 4
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) * 4 < INR (fact (2 * S n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

0 <= INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a ^ 2 <= 4
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) * 4 < INR (fact (2 * S n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

a ^ 2 <= 4
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) * 4 < INR (fact (2 * S n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

a <= 2
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
0 <= a
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
0 <= 2
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) * 4 < INR (fact (2 * S n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

0 <= a
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
0 <= 2
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) * 4 < INR (fact (2 * S n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

0 <= 2
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) * 4 < INR (fact (2 * S n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

INR (fact (2 * n + 1)) * 4 < INR (fact (2 * S n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

INR (fact (2 * n + 1)) * 4 < INR (fact (S (S (2 * n + 1))))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

INR (fact (2 * n + 1)) * 4 < INR (S (S (2 * n + 1))) * (INR (S (2 * n + 1)) * INR (fact (2 * n + 1)))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

INR (fact (2 * n + 1)) * 4 < INR (S (S (2 * n + 1))) * INR (S (2 * n + 1)) * INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

INR (fact (2 * n + 1)) * 4 < INR (fact (2 * n + 1)) * (INR (S (S (2 * n + 1))) * INR (S (2 * n + 1)))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

0 < INR (fact (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
4 < INR (S (S (2 * n + 1))) * INR (S (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

0%nat <> fact (2 * n + 1)
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
4 < INR (S (S (2 * n + 1))) * INR (S (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
H2:fact (2 * n + 1) <> 0%nat

0%nat <> fact (2 * n + 1)
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
4 < INR (S (S (2 * n + 1))) * INR (S (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

4 < INR (S (S (2 * n + 1))) * INR (S (2 * n + 1))
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
x:=INR n:R

4 < ((1 + 1) * x + 1 + 1 + 1) * ((1 + 1) * x + 1 + 1)
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
x:=INR n:R

4 < 4 * x * x + 10 * x + 6
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
x:=INR n:R

0 < 4 * x * x + 10 * x + 2
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
x:=INR n:R

0 <= 4 * x * x + 10 * x
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
x:=INR n:R
0 < 2
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
x:=INR n:R

0 <= x -> 0 <= 4 * x * x + 10 * x
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
x:=INR n:R
0 <= x
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
x:=INR n:R
0 < 2
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
x:=INR n:R

0 <= x
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
x:=INR n:R
0 < 2
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
x:=INR n:R

0 < 2
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

S (S (2 * n + 1)) = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

INR (fact (2 * S n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
H1:(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat

INR (fact (2 * n + 1)) <> 0
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat
(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
a:R
H:0 < a
H0:a <= PI / 2
Un:=fun i : nat => a ^ (2 * i + 1) / INR (fact (2 * i + 1)):nat -> R
n:nat

(2 * S n + 1)%nat = (2 * n + 1 + 2)%nat
ring. Qed.

forall a : R, 0 <= a -> a <= PI -> sin_lb a <= sin a <= sin_ub a

forall a : R, 0 <= a -> a <= PI -> sin_lb a <= sin a <= sin_ub a
intros; unfold sin_lb, sin_ub in |- *; apply (sin_bound a 1 H H0). Qed.

forall a : R, - PI / 2 <= a -> a <= PI / 2 -> cos_lb a <= cos a <= cos_ub a

forall a : R, - PI / 2 <= a -> a <= PI / 2 -> cos_lb a <= cos a <= cos_ub a
intros; unfold cos_lb, cos_ub in |- *; apply (cos_bound a 1 H H0). Qed. (**********)

- (PI / 2) < 0

- (PI / 2) < 0
H:PI > 0

- (PI / 2) < 0
lra. Qed.

PI / 4 < PI / 2

PI / 4 < PI / 2
H:PI > 0

PI / 4 < PI / 2
lra. Qed.

PI / 2 < PI

PI / 2 < PI
H:PI > 0

PI / 2 < PI
lra. Qed. (***************************************************)

Increasing and decreasing of cos and sin

(***************************************************)

forall x : R, 0 < x -> x < PI -> 0 < sin x

forall x : R, 0 < x -> x < PI -> 0 < sin x
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x < PI / 2

0 < sin x
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
0 < sin x
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x < PI / 2

0 < sin_lb x
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x < PI / 2
sin_lb x <= sin x
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
0 < sin x
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x < PI / 2

sin_lb x <= sin x
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
0 < sin x
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2

0 < sin x
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
H3:x = PI / 2

0 < sin x
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
H3:x > PI / 2
0 < sin x
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
H3:x > PI / 2

0 < sin x
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
H3:x > PI / 2
H4:- x < - (PI / 2)

PI + - x < PI + - (PI / 2) -> 0 < sin (PI - x)
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
H3:x > PI / 2
H4:- x < - (PI / 2)

PI + - x < PI / 2 -> 0 < sin (PI - x)
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
H3:x > PI / 2
H4:- x < - (PI / 2)
PI / 2 = PI + - (PI / 2)
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
H3:x > PI / 2
H4:- x < - (PI / 2)
H5:PI + - x < PI / 2
H6:- PI < - x

PI + - PI < PI + - x -> 0 < sin (PI - x)
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
H3:x > PI / 2
H4:- x < - (PI / 2)
PI / 2 = PI + - (PI / 2)
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
H3:x > PI / 2
H4:- x < - (PI / 2)
H5:PI + - x < PI / 2
H6:- PI < - x

0 < PI + - x -> 0 < sin (PI - x)
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
H3:x > PI / 2
H4:- x < - (PI / 2)
PI / 2 = PI + - (PI / 2)
x:R
H:0 < x
H0:x < PI
H1:sin_lb x <= sin x
H2:x = PI / 2 \/ x > PI / 2
H3:x > PI / 2
H4:- x < - (PI / 2)

PI / 2 = PI + - (PI / 2)
field. Qed.

forall x : R, - (PI / 2) < x -> x < PI / 2 -> 0 < cos x

forall x : R, - (PI / 2) < x -> x < PI / 2 -> 0 < cos x
x:R
H:- (PI / 2) < x
H0:x < PI / 2

PI / 2 + - (PI / 2) < PI / 2 + x -> 0 < sin (PI / 2 + x)
rewrite Rplus_opp_r; intro H1; generalize (Rplus_lt_compat_l (PI / 2) x (PI / 2) H0); rewrite <- double_var; intro H2; apply (sin_gt_0 (PI / 2 + x) H1 H2). Qed.

forall x : R, 0 <= x -> x <= PI -> 0 <= sin x

forall x : R, 0 <= x -> x <= PI -> 0 <= sin x
intros x H1 H2; elim H1; intro H3; [ elim H2; intro H4; [ left; apply (sin_gt_0 x H3 H4) | rewrite H4; right; symmetry in |- *; apply sin_PI ] | rewrite <- H3; right; symmetry in |- *; apply sin_0 ]. Qed.

forall x : R, - (PI / 2) <= x -> x <= PI / 2 -> 0 <= cos x

forall x : R, - (PI / 2) <= x -> x <= PI / 2 -> 0 <= cos x
intros x H1 H2; elim H1; intro H3; [ elim H2; intro H4; [ left; apply (cos_gt_0 x H3 H4) | rewrite H4; right; symmetry in |- *; apply cos_PI2 ] | rewrite <- H3; rewrite cos_neg; right; symmetry in |- *; apply cos_PI2 ]. Qed.

forall x : R, PI <= x -> x <= 2 * PI -> sin x <= 0

forall x : R, PI <= x -> x <= 2 * PI -> sin x <= 0
intros x H1 H2; apply Rge_le; rewrite <- Ropp_0; rewrite <- (Ropp_involutive (sin x)); apply Ropp_le_ge_contravar; rewrite <- neg_sin; replace (x + PI) with (x - PI + 2 * INR 1 * PI); [ rewrite (sin_period (x - PI) 1); apply sin_ge_0; [ replace (x - PI) with (x + - PI); [ rewrite Rplus_comm; replace 0 with (- PI + PI); [ apply Rplus_le_compat_l; assumption | ring ] | ring ] | replace (x - PI) with (x + - PI); rewrite Rplus_comm; [ pattern PI at 2 in |- *; replace PI with (- PI + 2 * PI); [ apply Rplus_le_compat_l; assumption | ring ] | ring ] ] | unfold INR in |- *; ring ]. Qed.

forall x : R, PI / 2 <= x -> x <= 3 * (PI / 2) -> cos x <= 0

forall x : R, PI / 2 <= x -> x <= 3 * (PI / 2) -> cos x <= 0
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)

0 <= cos (x - PI + 2 * INR 1 * PI)
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)
x - PI + 2 * INR 1 * PI = x + PI
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)

- (PI / 2) <= x - PI
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)
x - PI <= PI / 2
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)
x - PI + 2 * INR 1 * PI = x + PI
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)

- PI + PI / 2 <= x - PI
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)
x - PI <= PI / 2
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)
x - PI + 2 * INR 1 * PI = x + PI
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)

x - PI <= PI / 2
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)
x - PI + 2 * INR 1 * PI = x + PI
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)

- PI + x <= - PI + 3 * (PI / 2)
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)
x - PI + 2 * INR 1 * PI = x + PI
x:R
H1:PI / 2 <= x
H2:x <= 3 * (PI / 2)

x - PI + 2 * INR 1 * PI = x + PI
unfold INR in |- *; ring. Qed.

forall x : R, PI < x -> x < 2 * PI -> sin x < 0

forall x : R, PI < x -> x < 2 * PI -> sin x < 0
intros x H1 H2; rewrite <- Ropp_0; rewrite <- (Ropp_involutive (sin x)); apply Ropp_lt_gt_contravar; rewrite <- neg_sin; replace (x + PI) with (x - PI + 2 * INR 1 * PI); [ rewrite (sin_period (x - PI) 1); apply sin_gt_0; [ replace (x - PI) with (x + - PI); [ rewrite Rplus_comm; replace 0 with (- PI + PI); [ apply Rplus_lt_compat_l; assumption | ring ] | ring ] | replace (x - PI) with (x + - PI); rewrite Rplus_comm; [ pattern PI at 2 in |- *; replace PI with (- PI + 2 * PI); [ apply Rplus_lt_compat_l; assumption | ring ] | ring ] ] | unfold INR in |- *; ring ]. Qed.

forall x : R, - PI < x -> x < 0 -> sin x < 0

forall x : R, - PI < x -> x < 0 -> sin x < 0
intros; generalize (Rplus_lt_compat_l (2 * PI) (- PI) x H); replace (2 * PI + - PI) with PI; [ intro H1; rewrite Rplus_comm in H1; generalize (Rplus_lt_compat_l (2 * PI) x 0 H0); intro H2; rewrite (Rplus_comm (2 * PI)) in H2; rewrite <- (Rplus_comm 0) in H2; rewrite Rplus_0_l in H2; rewrite <- (sin_period x 1); unfold INR in |- *; replace (2 * 1 * PI) with (2 * PI); [ apply (sin_lt_0 (x + 2 * PI) H1 H2) | ring ] | ring ]. Qed.

forall x : R, PI / 2 < x -> x < 3 * (PI / 2) -> cos x < 0

forall x : R, PI / 2 < x -> x < 3 * (PI / 2) -> cos x < 0
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)

0 < cos (x - PI + 2 * INR 1 * PI)
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)
x - PI + 2 * INR 1 * PI = x + PI
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)

- (PI / 2) < x - PI
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)
x - PI < PI / 2
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)
x - PI + 2 * INR 1 * PI = x + PI
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)

- PI + PI / 2 < x - PI
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)
x - PI < PI / 2
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)
x - PI + 2 * INR 1 * PI = x + PI
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)

x - PI < PI / 2
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)
x - PI + 2 * INR 1 * PI = x + PI
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)

- PI + x < - PI + 3 * (PI / 2)
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)
x - PI + 2 * INR 1 * PI = x + PI
x:R
H1:PI / 2 < x
H2:x < 3 * (PI / 2)

x - PI + 2 * INR 1 * PI = x + PI
unfold INR in |- *; ring. Qed.

forall x : R, 0 < x -> x < PI / 2 -> 0 < tan x

forall x : R, 0 < x -> x < PI / 2 -> 0 < tan x
x:R
H1:0 < x
H2:x < PI / 2
H:0 < PI / 2
H0:- (PI / 2) < 0
H5:- (PI / 2) < x
H7:x < PI

0 < sin x
x:R
H1:0 < x
H2:x < PI / 2
H:0 < PI / 2
H0:- (PI / 2) < 0
H5:- (PI / 2) < x
H7:x < PI
0 < / cos x
x:R
H1:0 < x
H2:x < PI / 2
H:0 < PI / 2
H0:- (PI / 2) < 0
H5:- (PI / 2) < x
H7:x < PI

0 < / cos x
apply Rinv_0_lt_compat; apply cos_gt_0; assumption. Qed.

forall x : R, - (PI / 2) < x -> x < 0 -> tan x < 0

forall x : R, - (PI / 2) < x -> x < 0 -> tan x < 0
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x

- (- sin x / cos x) < - 0
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
- (- sin x / cos x) = sin x / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x

0 < sin (- x)
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
0 < / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
- (- sin x / cos x) = sin x / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x

0 < - x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
- x < PI
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
0 < / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
- (- sin x / cos x) = sin x / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x

- x < PI
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
0 < / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
- (- sin x / cos x) = sin x / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x

- x < PI / 2
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
PI / 2 < PI
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
0 < / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
- (- sin x / cos x) = sin x / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x

PI / 2 < PI
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
0 < / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
- (- sin x / cos x) = sin x / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x

0 < / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x
- (- sin x / cos x) = sin x / cos x
x:R
H1:- (PI / 2) < x
H2:x < 0
H3:0 < cos x

- (- sin x / cos x) = sin x / cos x
unfold Rdiv in |- *; ring. Qed.

forall x : R, 3 * (PI / 2) <= x -> x <= 2 * PI -> 0 <= cos x

forall x : R, 3 * (PI / 2) <= x -> x <= 2 * PI -> 0 <= cos x
x:R
H:3 * (PI / 2) <= x
H0:x <= 2 * PI

0 <= cos (2 * PI - x)
x:R
H:3 * (PI / 2) <= x
H0:x <= 2 * PI
H1:- (2 * PI) <= - x

2 * PI + - (2 * PI) <= 2 * PI + - x -> 0 <= cos (2 * PI - x)
x:R
H:3 * (PI / 2) <= x
H0:x <= 2 * PI
H1:- (2 * PI) <= - x

0 <= 2 * PI + - x -> 0 <= cos (2 * PI - x)
x:R
H:3 * (PI / 2) <= x
H0:x <= 2 * PI
H1:- (2 * PI) <= - x
H2:0 <= 2 * PI + - x
H3:- x <= - (3 * (PI / 2))

2 * PI + - x <= 2 * PI + - (3 * (PI / 2)) -> 0 <= cos (2 * PI - x)
x:R
H:3 * (PI / 2) <= x
H0:x <= 2 * PI
H1:- (2 * PI) <= - x
H2:0 <= 2 * PI + - x
H3:- x <= - (3 * (PI / 2))

2 * PI + - x <= PI / 2 -> 0 <= cos (2 * PI - x)
intro H4; apply (cos_ge_0 (2 * PI - x) (Rlt_le (- (PI / 2)) (2 * PI - x) (Rlt_le_trans (- (PI / 2)) 0 (2 * PI - x) _PI2_RLT_0 H2)) H4). Qed.

forall p q : R, cos p + cos q = 2 * cos ((p - q) / 2) * cos ((p + q) / 2)

forall p q : R, cos p + cos q = 2 * cos ((p - q) / 2) * cos ((p + q) / 2)
p, q:R

cos ((p - q) / 2 + (p + q) / 2) + cos q = 2 * cos ((p - q) / 2) * cos ((p + q) / 2)
p, q:R

cos ((p - q) / 2 + (p + q) / 2) + cos ((p - q) / 2 - (p + q) / 2) = 2 * cos ((p - q) / 2) * cos ((p + q) / 2)
rewrite cos_plus; rewrite cos_minus; ring. Qed.

forall p q : R, cos p - cos q = -2 * sin ((p - q) / 2) * sin ((p + q) / 2)

forall p q : R, cos p - cos q = -2 * sin ((p - q) / 2) * sin ((p + q) / 2)
p, q:R

cos ((p - q) / 2 + (p + q) / 2) - cos q = -2 * sin ((p - q) / 2) * sin ((p + q) / 2)
p, q:R

cos ((p - q) / 2 + (p + q) / 2) - cos ((p - q) / 2 - (p + q) / 2) = -2 * sin ((p - q) / 2) * sin ((p + q) / 2)
rewrite cos_plus; rewrite cos_minus; ring. Qed.

forall p q : R, sin p + sin q = 2 * cos ((p - q) / 2) * sin ((p + q) / 2)

forall p q : R, sin p + sin q = 2 * cos ((p - q) / 2) * sin ((p + q) / 2)
p, q:R

sin ((p - q) / 2 + (p + q) / 2) + sin q = 2 * cos ((p - q) / 2) * sin ((p + q) / 2)
p, q:R
(p - q) / 2 + (p + q) / 2 = p
p, q:R

sin ((p - q) / 2 + (p + q) / 2) + sin ((p + q) / 2 - (p - q) / 2) = 2 * cos ((p - q) / 2) * sin ((p + q) / 2)
p, q:R
(p + q) / 2 - (p - q) / 2 = q
p, q:R
(p - q) / 2 + (p + q) / 2 = p
p, q:R

(p + q) / 2 - (p - q) / 2 = q
p, q:R
(p - q) / 2 + (p + q) / 2 = p
p, q:R

(p - q) / 2 + (p + q) / 2 = p
pattern p at 3 in |- *; rewrite double_var; unfold Rdiv in |- *; ring. Qed.

forall p q : R, sin p - sin q = 2 * cos ((p + q) / 2) * sin ((p - q) / 2)

forall p q : R, sin p - sin q = 2 * cos ((p + q) / 2) * sin ((p - q) / 2)
p, q:R

sin ((p - q) / 2 + (p + q) / 2) - sin q = 2 * cos ((p + q) / 2) * sin ((p - q) / 2)
p, q:R

sin ((p - q) / 2 + (p + q) / 2) - sin ((p + q) / 2 - (p - q) / 2) = 2 * cos ((p + q) / 2) * sin ((p - q) / 2)
rewrite sin_plus; rewrite sin_minus; ring. Qed.

forall x y : R, - (PI / 2) <= x -> x <= PI / 2 -> - (PI / 2) <= y -> y <= PI / 2 -> sin x < sin y -> x < y

forall x y : R, - (PI / 2) <= x -> x <= PI / 2 -> - (PI / 2) <= y -> y <= PI / 2 -> sin x < sin y -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y

sin ((x - y) / 2) < 0 -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 < 0

x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 < 0

0 < 2
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 < 0
Hyp:0 < 2
x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 < 0
Hyp:0 < 2

x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 < 0
Hyp:0 < 2

2 * ((x - y) / 2) < 2 * 0 -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 < 0
Hyp:0 < 2

2 * ((x - y) * / 2) < 2 * 0 -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 < 0
Hyp:0 < 2

2 * (x - y) * / 2 < 2 * 0 -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 < 0
Hyp:0 < 2

x - y < 2 * 0 -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 < 0
Hyp:0 < 2
2 <> 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 < 0
Hyp:0 < 2

x - y < 0 -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 < 0
Hyp:0 < 2
2 <> 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 < 0
Hyp:0 < 2

2 <> 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0

x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:(x - y) / 2 = 0

x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:(x - y) / 2 > 0
x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:(x - y) / 2 > 0

x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:0 < (x - y) / 2

- - (PI / 2) >= - y -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:0 < (x - y) / 2

PI / 2 >= - y -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:0 < (x - y) / 2
H7:- y <= PI / 2

x + - y <= PI / 2 + PI / 2 -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:0 < (x - y) / 2
H7:- y <= PI / 2

x + - y <= PI -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:0 < (x - y) / 2
H7:- y <= PI / 2
H8:x + - y <= PI

x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:0 < (x - y) / 2
H7:- y <= PI / 2
H8:x + - y <= PI

0 < 2
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:0 < (x - y) / 2
H7:- y <= PI / 2
H8:x + - y <= PI
Hyp:0 < 2
x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:0 < (x - y) / 2
H7:- y <= PI / 2
H8:x + - y <= PI
Hyp:0 < 2

x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:0 < (x - y) / 2
H7:- y <= PI / 2
H8:x + - y <= PI
Hyp:0 < 2

/ 2 * (x - y) <= / 2 * PI -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
H4:sin ((x - y) / 2) < 0
H5:(x - y) / 2 = 0 \/ (x - y) / 2 > 0
H6:0 < (x - y) / 2
H7:- y <= PI / 2
H8:x + - y <= PI
Hyp:0 < 2

(x - y) * / 2 <= PI * / 2 -> x < y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:sin x < sin y

sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0

x + y <= PI / 2 + PI / 2 -> sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0

x + y <= PI -> sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0

0 < 2
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
x + y <= PI -> sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2

x + y <= PI -> sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:x + y <= PI

/ 2 * (x + y) <= / 2 * PI -> sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:x + y <= PI

(x + y) * / 2 <= PI * / 2 -> sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2

- PI <= x + y -> sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- PI <= x + y

/ 2 * - PI <= / 2 * (x + y) -> sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- PI <= x + y

/ 2 * - PI <= (x + y) / 2 -> sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- PI <= x + y

- (PI / 2) <= (x + y) / 2 -> sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2

sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 = PI * / 2
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2
H50:- (PI / 2) < (x + y) / 2

sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2
H50:- (PI / 2) = (x + y) / 2
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 = PI * / 2
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2
H50:- (PI / 2) < (x + y) / 2
H6:0 < cos ((x + y) / 2)

2 * 0 < 2 * cos ((x + y) / 2) -> sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2
H50:- (PI / 2) = (x + y) / 2
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 = PI * / 2
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2
H50:- (PI / 2) < (x + y) / 2
H6:0 < cos ((x + y) / 2)

0 < 2 * cos ((x + y) / 2) -> sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2
H50:- (PI / 2) = (x + y) / 2
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 = PI * / 2
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2
H50:- (PI / 2) < (x + y) / 2
H6:0 < 2 * cos ((x + y) / 2)
H7:sin ((x - y) / 2) < 0

sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2
H50:- (PI / 2) < (x + y) / 2
H6:0 < 2 * cos ((x + y) / 2)
H7:sin ((x - y) / 2) >= 0
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2
H50:- (PI / 2) = (x + y) / 2
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 = PI * / 2
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2
H50:- (PI / 2) < (x + y) / 2
H6:0 < 2 * cos ((x + y) / 2)
H7:sin ((x - y) / 2) >= 0

sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2
H50:- (PI / 2) = (x + y) / 2
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 = PI * / 2
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 < PI * / 2
H50:- (PI / 2) = (x + y) / 2

sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 = PI * / 2
sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 = PI * / 2

sin ((x - y) / 2) < 0
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:2 * cos ((x + y) * / 2) * sin ((x - y) * / 2) < 0
Hyp:0 < 2
H4:(x + y) * / 2 <= PI * / 2
H5:- (PI / 2) <= (x + y) / 2
H40:(x + y) * / 2 = PI * / 2

sin ((x - y) / 2) < 0
rewrite H40 in H3; assert (H50 := cos_PI2); unfold Rdiv in H50; rewrite H50 in H3; rewrite Rmult_0_r in H3; rewrite Rmult_0_l in H3; elim (Rlt_irrefl 0 H3). Qed.

forall x y : R, - (PI / 2) <= x -> x <= PI / 2 -> - (PI / 2) <= y -> y <= PI / 2 -> x < y -> sin x < sin y

forall x y : R, - (PI / 2) <= x -> x <= PI / 2 -> - (PI / 2) <= y -> y <= PI / 2 -> x < y -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:x < y
H4:x + x < x + y

- PI <= x + x -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:x < y
H4:x + x < x + y

0 < 2
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:x < y
H4:x + x < x + y
Hyp:0 < 2
- PI <= x + x -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:x < y
H4:x + x < x + y
Hyp:0 < 2

- PI <= x + x -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:x < y
H4:x + x < x + y
Hyp:0 < 2
H5:- PI <= x + x
H6:- PI < x + y

- (PI / 2) < / 2 * (x + y) -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:x < y
H4:x + x < x + y
Hyp:0 < 2
H5:- PI <= x + x
H6:- PI < x + y

- (PI / 2) < (x + y) / 2 -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:x + y < y + y

y + y <= PI / 2 + PI / 2 -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:x + y < y + y

y + y <= PI -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:x + y < y + y
H6:y + y <= PI
H7:x + y < PI

/ 2 * (x + y) < PI / 2 -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H1:- (PI / 2) <= y
H2:y <= PI / 2
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:x + y < y + y
H6:y + y <= PI
H7:x + y < PI

(x + y) / 2 < PI / 2 -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:(x + y) / 2 < PI / 2
H1:- y <= PI / 2
H2:- (PI / 2) <= - y

x - y < - y + y -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:(x + y) / 2 < PI / 2
H1:- y <= PI / 2
H2:- (PI / 2) <= - y

x - y < 0 -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:(x + y) / 2 < PI / 2
H1:- y <= PI / 2
H2:- (PI / 2) <= - y
H6:x - y < 0

(x - y) / 2 < 0 -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:(x + y) / 2 < PI / 2
H1:- y <= PI / 2
H2:- (PI / 2) <= - y
H6:(x - y) / 2 < 0

- PI <= x + - y -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:(x + y) / 2 < PI / 2
H1:- y <= PI / 2
H2:- (PI / 2) <= - y
H6:(x - y) / 2 < 0
H7:- PI <= x + - y

- (PI / 2) <= / 2 * (x - y) -> sin x < sin y
x, y:R
H:- (PI / 2) <= x
H0:x <= PI / 2
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:(x + y) / 2 < PI / 2
H1:- y <= PI / 2
H2:- (PI / 2) <= - y
H6:(x - y) / 2 < 0
H7:- PI <= x + - y

- (PI / 2) <= (x - y) / 2 -> sin x < sin y
x, y:R
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:(x + y) / 2 < PI / 2
H6:(x - y) / 2 < 0
H7:- (PI / 2) <= (x - y) / 2
H8:0 < 2 * cos ((x + y) / 2)

- PI < - (PI / 2) -> 2 * cos ((x + y) / 2) * sin ((x - y) / 2) < 0
x, y:R
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:(x + y) / 2 < PI / 2
H6:(x - y) / 2 < 0
H7:- (PI / 2) <= (x - y) / 2
H8:0 < 2 * cos ((x + y) / 2)
- PI < - (PI / 2)
x, y:R
H3:x < y
Hyp:0 < 2
H4:- (PI / 2) < (x + y) / 2
H5:(x + y) / 2 < PI / 2
H6:(x - y) / 2 < 0
H7:- (PI / 2) <= (x - y) / 2
H8:0 < 2 * cos ((x + y) / 2)

- PI < - (PI / 2)
apply Ropp_lt_gt_contravar; apply PI2_Rlt_PI. Qed.

forall x y : R, x <= 3 * (PI / 2) -> PI / 2 <= x -> y <= 3 * (PI / 2) -> PI / 2 <= y -> sin x < sin y -> y < x

forall x y : R, x <= 3 * (PI / 2) -> PI / 2 <= x -> y <= 3 * (PI / 2) -> PI / 2 <= y -> sin x < sin y -> y < x
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:sin (PI - x) < sin (PI - y)

- PI + PI / 2 <= - PI + y -> - PI + y <= - PI + 3 * (PI / 2) -> - PI + PI / 2 <= x - PI -> x - PI <= - PI + 3 * (PI / 2) -> sin (- (PI - x)) > sin (- (PI - y)) -> y < x
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:sin (PI - x) < sin (PI - y)

- (PI / 2) <= - PI + y -> - PI + y <= - PI + 3 * (PI / 2) -> - (PI / 2) <= x - PI -> x - PI <= - PI + 3 * (PI / 2) -> sin (- (PI - x)) > sin (- (PI - y)) -> y < x
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:sin (PI - x) < sin (PI - y)

- (PI / 2) <= y - PI -> y - PI <= - PI + 3 * (PI / 2) -> - (PI / 2) <= x - PI -> x - PI <= - PI + 3 * (PI / 2) -> sin (- (PI - x)) > sin (- (PI - y)) -> y < x
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:sin (PI - x) < sin (PI - y)

- (PI / 2) <= y - PI -> y - PI <= PI / 2 -> - (PI / 2) <= x - PI -> x - PI <= PI / 2 -> sin (- (PI - x)) > sin (- (PI - y)) -> y < x
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:sin (PI - x) < sin (PI - y)

- (PI / 2) <= y - PI -> y - PI <= PI / 2 -> - (PI / 2) <= x - PI -> x - PI <= PI / 2 -> sin (x - PI) > sin (- (PI - y)) -> y < x
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:sin (PI - x) < sin (PI - y)

- (PI / 2) <= y - PI -> y - PI <= PI / 2 -> - (PI / 2) <= x - PI -> x - PI <= PI / 2 -> sin (x - PI) > sin (y - PI) -> y < x
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:sin (PI - x) < sin (PI - y)
H4:- (PI / 2) <= y - PI
H5:y - PI <= PI / 2
H6:- (PI / 2) <= x - PI
H7:x - PI <= PI / 2
H8:sin (y - PI) < sin (x - PI)

y + - PI < - PI + x
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:sin (PI - x) < sin (PI - y)
H4:- (PI / 2) <= y - PI
H5:y - PI <= PI / 2
H6:- (PI / 2) <= x - PI
H7:x - PI <= PI / 2
H8:sin (y - PI) < sin (x - PI)

y + - PI < x + - PI
apply (sin_increasing_0 (y - PI) (x - PI) H4 H5 H6 H7 H8). Qed.

forall x y : R, x <= 3 * (PI / 2) -> PI / 2 <= x -> y <= 3 * (PI / 2) -> PI / 2 <= y -> x < y -> sin y < sin x

forall x y : R, x <= 3 * (PI / 2) -> PI / 2 <= x -> y <= 3 * (PI / 2) -> PI / 2 <= y -> x < y -> sin y < sin x
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:x < y

- PI + x < - PI + y -> - (PI / 2) <= - PI + y -> - PI + y <= - PI + 3 * (PI / 2) -> - (PI / 2) <= - PI + x -> - PI + x <= - PI + 3 * (PI / 2) -> sin (PI - y) < sin (PI - x)
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:x < y

- PI + x < y - PI -> - (PI / 2) <= y - PI -> y - PI <= - PI + 3 * (PI / 2) -> - (PI / 2) <= - PI + x -> - PI + x <= - PI + 3 * (PI / 2) -> sin (PI - y) < sin (PI - x)
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:x < y

- PI + x < y - PI -> - (PI / 2) <= y - PI -> y - PI <= PI / 2 -> - (PI / 2) <= - PI + x -> - PI + x <= PI / 2 -> sin (PI - y) < sin (PI - x)
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:x < y

x - PI < y - PI -> - (PI / 2) <= y - PI -> y - PI <= PI / 2 -> - (PI / 2) <= x - PI -> x - PI <= PI / 2 -> sin (PI - y) < sin (PI - x)
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:x < y
H4:x - PI < y - PI
H5:- (PI / 2) <= y - PI
H6:y - PI <= PI / 2
H7:- (PI / 2) <= x - PI
H8:x - PI <= PI / 2

sin (x - PI) < sin (- (PI - y))
x, y:R
H:x <= 3 * (PI / 2)
H0:PI / 2 <= x
H1:y <= 3 * (PI / 2)
H2:PI / 2 <= y
H3:x < y
H4:x - PI < y - PI
H5:- (PI / 2) <= y - PI
H6:y - PI <= PI / 2
H7:- (PI / 2) <= x - PI
H8:x - PI <= PI / 2

sin (x - PI) < sin (y - PI)
apply (sin_increasing_1 (x - PI) (y - PI) H7 H8 H5 H6 H4). Qed.

forall x y : R, PI <= x -> x <= 2 * PI -> PI <= y -> y <= 2 * PI -> cos x < cos y -> x < y

forall x y : R, PI <= x -> x <= 2 * PI -> PI <= y -> y <= 2 * PI -> cos x < cos y -> x < y
x, y:R
H1:PI <= x
H2:x <= 2 * PI
H3:PI <= y
H4:y <= 2 * PI

cos (PI / 2 - (x - 3 * (PI / 2))) < cos (- y + 2 * 1 * PI) -> x < y
x, y:R
H1:PI <= x
H2:x <= 2 * PI
H3:PI <= y
H4:y <= 2 * PI

cos (PI / 2 - (x - 3 * (PI / 2))) < cos (PI / 2 - (y - 3 * (PI / 2))) -> x < y
x, y:R
H1:PI <= x
H2:x <= 2 * PI
H3:PI <= y
H4:y <= 2 * PI
H5:sin (x - 3 * (PI / 2)) < sin (y - 3 * (PI / 2))

-3 * (PI / 2) + y <= -3 * (PI / 2) + 2 * PI -> -3 * (PI / 2) + PI <= -3 * (PI / 2) + y -> -3 * (PI / 2) + x <= -3 * (PI / 2) + 2 * PI -> -3 * (PI / 2) + PI <= -3 * (PI / 2) + x -> x < y
x, y:R
H1:PI <= x
H2:x <= 2 * PI
H3:PI <= y
H4:y <= 2 * PI
H5:sin (x - 3 * (PI / 2)) < sin (y - 3 * (PI / 2))

y - 3 * (PI / 2) <= -3 * (PI / 2) + 2 * PI -> -3 * (PI / 2) + PI <= y - 3 * (PI / 2) -> -3 * (PI / 2) + x <= -3 * (PI / 2) + 2 * PI -> -3 * (PI / 2) + PI <= -3 * (PI / 2) + x -> x < y
x, y:R
H1:PI <= x
H2:x <= 2 * PI
H3:PI <= y
H4:y <= 2 * PI
H5:sin (x - 3 * (PI / 2)) < sin (y - 3 * (PI / 2))

y - 3 * (PI / 2) <= -3 * (PI / 2) + 2 * PI -> -3 * (PI / 2) + PI <= y - 3 * (PI / 2) -> x - 3 * (PI / 2) <= -3 * (PI / 2) + 2 * PI -> -3 * (PI / 2) + PI <= x - 3 * (PI / 2) -> x < y
x, y:R
H1:PI <= x
H2:x <= 2 * PI
H3:PI <= y
H4:y <= 2 * PI
H5:sin (x - 3 * (PI / 2)) < sin (y - 3 * (PI / 2))

y - 3 * (PI / 2) <= PI / 2 -> -3 * (PI / 2) + PI <= y - 3 * (PI / 2) -> x - 3 * (PI / 2) <= PI / 2 -> -3 * (PI / 2) + PI <= x - 3 * (PI / 2) -> x < y
x, y:R
H1:PI <= x
H2:x <= 2 * PI
H3:PI <= y
H4:y <= 2 * PI
H5:sin (x - 3 * (PI / 2)) < sin (y - 3 * (PI / 2))

y - 3 * (PI / 2) <= PI / 2 -> - (PI / 2) <= y - 3 * (PI / 2) -> x - 3 * (PI / 2) <= PI / 2 -> - (PI / 2) <= x - 3 * (PI / 2) -> x < y
x, y:R
H5:sin (x - 3 * (PI / 2)) < sin (y - 3 * (PI / 2))
H1:y - 3 * (PI / 2) <= PI / 2
H2:- (PI / 2) <= y - 3 * (PI / 2)
H3:x - 3 * (PI / 2) <= PI / 2
H4:- (PI / 2) <= x - 3 * (PI / 2)

x - 3 * (PI / 2) < -3 * (PI / 2) + y
x, y:R
H5:sin (x - 3 * (PI / 2)) < sin (y - 3 * (PI / 2))
H1:y - 3 * (PI / 2) <= PI / 2
H2:- (PI / 2) <= y - 3 * (PI / 2)
H3:x - 3 * (PI / 2) <= PI / 2
H4:- (PI / 2) <= x - 3 * (PI / 2)

x - 3 * (PI / 2) < y - 3 * (PI / 2)
apply (sin_increasing_0 (x - 3 * (PI / 2)) (y - 3 * (PI / 2)) H4 H3 H2 H1 H5). Qed.

forall x y : R, PI <= x -> x <= 2 * PI -> PI <= y -> y <= 2 * PI -> x < y -> cos x < cos y

forall x y : R, PI <= x -> x <= 2 * PI -> PI <= y -> y <= 2 * PI -> x < y -> cos x < cos y
x, y:R
H1:PI <= x
H2:x <= 2 * PI
H3:PI <= y
H4:y <= 2 * PI
H5:x < y

x - 3 * (PI / 2) < -3 * (PI / 2) + y -> -3 * (PI / 2) + y <= -3 * (PI / 2) + 2 * PI -> -3 * (PI / 2) + PI <= -3 * (PI / 2) + y -> x - 3 * (PI / 2) <= -3 * (PI / 2) + 2 * PI -> -3 * (PI / 2) + PI <= x - 3 * (PI / 2) -> cos (- x + 2 * 1 * PI) < cos (- y + 2 * 1 * PI)
x, y:R
H1:PI <= x
H2:x <= 2 * PI
H3:PI <= y
H4:y <= 2 * PI
H5:x < y

x - 3 * (PI / 2) < y - 3 * (PI / 2) -> y - 3 * (PI / 2) <= -3 * (PI / 2) + 2 * PI -> -3 * (PI / 2) + PI <= y - 3 * (PI / 2) -> x - 3 * (PI / 2) <= -3 * (PI / 2) + 2 * PI -> -3 * (PI / 2) + PI <= x - 3 * (PI / 2) -> cos (- x + 2 * 1 * PI) < cos (- y + 2 * 1 * PI)
x, y:R
H1:PI <= x
H2:x <= 2 * PI
H3:PI <= y
H4:y <= 2 * PI
H5:x < y

x - 3 * (PI / 2) < y - 3 * (PI / 2) -> y - 3 * (PI / 2) <= -3 * (PI / 2) + 2 * PI -> - (PI / 2) <= y - 3 * (PI / 2) -> x - 3 * (PI / 2) <= -3 * (PI / 2) + 2 * PI -> - (PI / 2) <= x - 3 * (PI / 2) -> cos (- x + 2 * 1 * PI) < cos (- y + 2 * 1 * PI)
x, y:R
H1:PI <= x
H2:x <= 2 * PI
H3:PI <= y
H4:y <= 2 * PI
H5:x < y

x - 3 * (PI / 2) < y - 3 * (PI / 2) -> y - 3 * (PI / 2) <= PI / 2 -> - (PI / 2) <= y - 3 * (PI / 2) -> x - 3 * (PI / 2) <= PI / 2 -> - (PI / 2) <= x - 3 * (PI / 2) -> cos (- x + 2 * 1 * PI) < cos (- y + 2 * 1 * PI)
x, y:R
H1:x - 3 * (PI / 2) < y - 3 * (PI / 2)
H2:y - 3 * (PI / 2) <= PI / 2
H3:- (PI / 2) <= y - 3 * (PI / 2)
H4:x - 3 * (PI / 2) <= PI / 2
H5:- (PI / 2) <= x - 3 * (PI / 2)

cos (PI / 2 - (x - 3 * (PI / 2))) < cos (- y + 2 * 1 * PI)
x, y:R
H1:x - 3 * (PI / 2) < y - 3 * (PI / 2)
H2:y - 3 * (PI / 2) <= PI / 2
H3:- (PI / 2) <= y - 3 * (PI / 2)
H4:x - 3 * (PI / 2) <= PI / 2
H5:- (PI / 2) <= x - 3 * (PI / 2)

cos (PI / 2 - (x - 3 * (PI / 2))) < cos (PI / 2 - (y - 3 * (PI / 2)))
repeat rewrite cos_shift; apply (sin_increasing_1 (x - 3 * (PI / 2)) (y - 3 * (PI / 2)) H5 H4 H3 H2 H1). Qed.

forall x y : R, 0 <= x -> x <= PI -> 0 <= y -> y <= PI -> cos x < cos y -> y < x

forall x y : R, 0 <= x -> x <= PI -> 0 <= y -> y <= PI -> cos x < cos y -> y < x
x, y:R
H:0 <= x
H0:x <= PI
H1:0 <= y
H2:y <= PI
H3:cos x < cos y
H4:cos (PI + y) < cos (PI + x)

PI + y <= PI + PI -> PI <= PI + y -> PI + x <= PI + PI -> PI <= PI + x -> y < x
x, y:R
H:0 <= x
H0:x <= PI
H1:0 <= y
H2:y <= PI
H3:cos x < cos y
H4:cos (PI + y) < cos (PI + x)

PI + y <= 2 * PI -> PI <= PI + y -> PI + x <= 2 * PI -> PI <= PI + x -> y < x
clear H H0 H1 H2 H3; intros; apply Rplus_lt_reg_l with PI; apply (cos_increasing_0 (PI + y) (PI + x) H0 H H2 H1 H4). Qed.

forall x y : R, 0 <= x -> x <= PI -> 0 <= y -> y <= PI -> x < y -> cos y < cos x

forall x y : R, 0 <= x -> x <= PI -> 0 <= y -> y <= PI -> x < y -> cos y < cos x
x, y:R
H:0 <= x
H0:x <= PI
H1:0 <= y
H2:y <= PI
H3:x < y

PI + y <= PI + PI -> PI <= PI + y -> PI + x <= PI + PI -> PI <= PI + x -> cos (PI + x) < cos (PI + y)
x, y:R
H:0 <= x
H0:x <= PI
H1:0 <= y
H2:y <= PI
H3:x < y

PI + y <= 2 * PI -> PI <= PI + y -> PI + x <= 2 * PI -> PI <= PI + x -> cos (PI + x) < cos (PI + y)
generalize (Rplus_lt_compat_l PI x y H3); clear H H0 H1 H2 H3; intros; apply (cos_increasing_1 (PI + x) (PI + y) H3 H2 H1 H0 H). Qed.

forall x y : R, cos x <> 0 -> cos y <> 0 -> tan x - tan y = sin (x - y) / (cos x * cos y)

forall x y : R, cos x <> 0 -> cos y <> 0 -> tan x - tan y = sin (x - y) / (cos x * cos y)
x, y:R
H:cos x <> 0
H0:cos y <> 0

sin x / cos x - sin y / cos y = (sin x * cos y - cos x * sin y) / (cos x * cos y)
x, y:R
H:cos x <> 0
H0:cos y <> 0

cos y <> 0 /\ cos x <> 0
now split. Qed.

forall x y : R, - (PI / 4) <= x -> x <= PI / 4 -> - (PI / 4) <= y -> y <= PI / 4 -> tan x < tan y -> x < y

forall x y : R, - (PI / 4) <= x -> x <= PI / 4 -> - (PI / 4) <= y -> y <= PI / 4 -> tan x < tan y -> x < y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0

sin (x - y) < 0 -> x < y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:sin (x - y) < 0
H10:- y <= PI / 4
H11:- (PI / 4) <= - y

x + - y <= PI / 4 + PI / 4 -> - (PI / 4) + - (PI / 4) <= x + - y -> x < y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:sin (x - y) < 0
H10:- y <= PI / 4
H11:- (PI / 4) <= - y

x + - y <= PI / 2 -> - (PI / 4) + - (PI / 4) <= x + - y -> x < y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:sin (x - y) < 0
H10:- y <= PI / 4
H11:- (PI / 4) <= - y

x + - y <= PI / 2 -> - (PI / 2) <= x + - y -> x < y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:sin (x - y) < 0
H10:- y <= PI / 4
H11:- (PI / 4) <= - y
H12:x + - y <= PI / 2
H13:- (PI / 2) <= x + - y
H14:0 < x - y

x < y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:sin (x - y) < 0
H10:- y <= PI / 4
H11:- (PI / 4) <= - y
H12:x + - y <= PI / 2
H13:- (PI / 2) <= x + - y
H14:0 = x - y \/ 0 > x - y
x < y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:sin (x - y) < 0
H10:- y <= PI / 4
H11:- (PI / 4) <= - y
H12:x + - y <= PI / 2
H13:- (PI / 2) <= x + - y
H14:0 = x - y \/ 0 > x - y

x < y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:sin (x - y) < 0
H10:- y <= PI / 4
H11:- (PI / 4) <= - y
H12:x + - y <= PI / 2
H13:- (PI / 2) <= x + - y
H14:0 = x - y \/ 0 > x - y
H15:0 = x - y

x < y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:sin (x - y) < 0
H10:- y <= PI / 4
H11:- (PI / 4) <= - y
H12:x + - y <= PI / 2
H13:- (PI / 2) <= x + - y
H14:0 = x - y \/ 0 > x - y
H15:0 > x - y
x < y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:sin (x - y) < 0
H10:- y <= PI / 4
H11:- (PI / 4) <= - y
H12:x + - y <= PI / 2
H13:- (PI / 2) <= x + - y
H14:0 = x - y \/ 0 > x - y
H15:0 > x - y

x < y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0

sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:sin (x - y) < 0

sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:sin (x - y) >= 0
sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:sin (x - y) >= 0

sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:0 <= sin (x - y)
H10:0 < / cos x
H11:0 < / cos y

0 < / (cos x * cos y) -> sin (x - y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:0 <= sin (x - y)
H10:0 < / cos x
H11:0 < / cos y
/ (cos x * cos y) = / cos x * / cos y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:0 <= sin (x - y)
H10:0 < / cos x
H11:0 < / cos y

/ (cos x * cos y) = / cos x * / cos y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:0 <= sin (x - y)
H10:0 < / cos x
H11:0 < / cos y

cos x <> 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:0 <= sin (x - y)
H10:0 < / cos x
H11:0 < / cos y
cos y <> 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:tan x - tan y = sin (x - y) / (cos x * cos y)
H3:sin (x - y) / (cos x * cos y) < 0
H9:0 <= sin (x - y)
H10:0 < / cos x
H11:0 < / cos y

cos y <> 0
assumption. Qed.

forall x y : R, - (PI / 4) <= x -> x <= PI / 4 -> - (PI / 4) <= y -> y <= PI / 4 -> x < y -> tan x < tan y

forall x y : R, - (PI / 4) <= x -> x <= PI / 4 -> - (PI / 4) <= y -> y <= PI / 4 -> x < y -> tan x < tan y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H3:x < y
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H10:0 < / cos x
H11:0 < / cos y

0 < / (cos x * cos y) -> sin (x - y) / (cos x * cos y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H3:x < y
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H10:0 < / cos x
H11:0 < / cos y
/ (cos x * cos y) = / cos x * / cos y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H3:x < y
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:0 < / (cos x * cos y)
H11:- (PI / 4) <= - y

- (PI / 4) + - (PI / 4) <= x + - y -> sin (x - y) / (cos x * cos y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H3:x < y
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H10:0 < / cos x
H11:0 < / cos y
/ (cos x * cos y) = / cos x * / cos y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H3:x < y
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H8:0 < / (cos x * cos y)
H11:- (PI / 4) <= - y

- (PI / 2) <= x + - y -> sin (x - y) / (cos x * cos y) < 0
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H3:x < y
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H10:0 < / cos x
H11:0 < / cos y
/ (cos x * cos y) = / cos x * / cos y
x, y:R
H:- (PI / 4) <= x
H0:x <= PI / 4
H1:- (PI / 4) <= y
H2:y <= PI / 4
H3:x < y
H4:PI / 4 < PI / 2
H5:- (PI / 2) < - (PI / 4)
HP1:0 < cos x
HP2:0 < cos y
H6:cos x <> 0
H7:cos y <> 0
H10:0 < / cos x
H11:0 < / cos y

/ (cos x * cos y) = / cos x * / cos y
apply Rinv_mult_distr; assumption. Qed.

forall x y : R, - (PI / 2) <= x -> x <= PI / 2 -> - (PI / 2) <= y -> y <= PI / 2 -> sin x <= sin y -> x <= y

forall x y : R, - (PI / 2) <= x -> x <= PI / 2 -> - (PI / 2) <= y -> y <= PI / 2 -> sin x <= sin y -> x <= y
intros; case (Rtotal_order (sin x) (sin y)); intro H4; [ left; apply (sin_increasing_0 x y H H0 H1 H2 H4) | elim H4; intro H5; [ case (Rtotal_order x y); intro H6; [ left; assumption | elim H6; intro H7; [ right; assumption | generalize (sin_increasing_1 y x H1 H2 H H0 H7); intro H8; rewrite H5 in H8; elim (Rlt_irrefl (sin y) H8) ] ] | elim (Rlt_irrefl (sin x) (Rle_lt_trans (sin x) (sin y) (sin x) H3 H5)) ] ]. Qed.

forall x y : R, - (PI / 2) <= x -> x <= PI / 2 -> - (PI / 2) <= y -> y <= PI / 2 -> x <= y -> sin x <= sin y

forall x y : R, - (PI / 2) <= x -> x <= PI / 2 -> - (PI / 2) <= y -> y <= PI / 2 -> x <= y -> sin x <= sin y
intros; case (Rtotal_order x y); intro H4; [ left; apply (sin_increasing_1 x y H H0 H1 H2 H4) | elim H4; intro H5; [ case (Rtotal_order (sin x) (sin y)); intro H6; [ left; assumption | elim H6; intro H7; [ right; assumption | generalize (sin_increasing_0 y x H1 H2 H H0 H7); intro H8; rewrite H5 in H8; elim (Rlt_irrefl y H8) ] ] | elim (Rlt_irrefl x (Rle_lt_trans x y x H3 H5)) ] ]. Qed.

forall x y : R, x <= 3 * (PI / 2) -> PI / 2 <= x -> y <= 3 * (PI / 2) -> PI / 2 <= y -> sin x <= sin y -> y <= x

forall x y : R, x <= 3 * (PI / 2) -> PI / 2 <= x -> y <= 3 * (PI / 2) -> PI / 2 <= y -> sin x <= sin y -> y <= x
intros; case (Rtotal_order (sin x) (sin y)); intro H4; [ left; apply (sin_decreasing_0 x y H H0 H1 H2 H4) | elim H4; intro H5; [ case (Rtotal_order x y); intro H6; [ generalize (sin_decreasing_1 x y H H0 H1 H2 H6); intro H8; rewrite H5 in H8; elim (Rlt_irrefl (sin y) H8) | elim H6; intro H7; [ right; symmetry in |- *; assumption | left; assumption ] ] | elim (Rlt_irrefl (sin x) (Rle_lt_trans (sin x) (sin y) (sin x) H3 H5)) ] ]. Qed.

forall x y : R, x <= 3 * (PI / 2) -> PI / 2 <= x -> y <= 3 * (PI / 2) -> PI / 2 <= y -> x <= y -> sin y <= sin x

forall x y : R, x <= 3 * (PI / 2) -> PI / 2 <= x -> y <= 3 * (PI / 2) -> PI / 2 <= y -> x <= y -> sin y <= sin x
intros; case (Rtotal_order x y); intro H4; [ left; apply (sin_decreasing_1 x y H H0 H1 H2 H4) | elim H4; intro H5; [ case (Rtotal_order (sin x) (sin y)); intro H6; [ generalize (sin_decreasing_0 x y H H0 H1 H2 H6); intro H8; rewrite H5 in H8; elim (Rlt_irrefl y H8) | elim H6; intro H7; [ right; symmetry in |- *; assumption | left; assumption ] ] | elim (Rlt_irrefl x (Rle_lt_trans x y x H3 H5)) ] ]. Qed.

forall x y : R, PI <= x -> x <= 2 * PI -> PI <= y -> y <= 2 * PI -> cos x <= cos y -> x <= y

forall x y : R, PI <= x -> x <= 2 * PI -> PI <= y -> y <= 2 * PI -> cos x <= cos y -> x <= y
intros; case (Rtotal_order (cos x) (cos y)); intro H4; [ left; apply (cos_increasing_0 x y H H0 H1 H2 H4) | elim H4; intro H5; [ case (Rtotal_order x y); intro H6; [ left; assumption | elim H6; intro H7; [ right; assumption | generalize (cos_increasing_1 y x H1 H2 H H0 H7); intro H8; rewrite H5 in H8; elim (Rlt_irrefl (cos y) H8) ] ] | elim (Rlt_irrefl (cos x) (Rle_lt_trans (cos x) (cos y) (cos x) H3 H5)) ] ]. Qed.

forall x y : R, PI <= x -> x <= 2 * PI -> PI <= y -> y <= 2 * PI -> x <= y -> cos x <= cos y

forall x y : R, PI <= x -> x <= 2 * PI -> PI <= y -> y <= 2 * PI -> x <= y -> cos x <= cos y
intros; case (Rtotal_order x y); intro H4; [ left; apply (cos_increasing_1 x y H H0 H1 H2 H4) | elim H4; intro H5; [ case (Rtotal_order (cos x) (cos y)); intro H6; [ left; assumption | elim H6; intro H7; [ right; assumption | generalize (cos_increasing_0 y x H1 H2 H H0 H7); intro H8; rewrite H5 in H8; elim (Rlt_irrefl y H8) ] ] | elim (Rlt_irrefl x (Rle_lt_trans x y x H3 H5)) ] ]. Qed.

forall x y : R, 0 <= x -> x <= PI -> 0 <= y -> y <= PI -> cos x <= cos y -> y <= x

forall x y : R, 0 <= x -> x <= PI -> 0 <= y -> y <= PI -> cos x <= cos y -> y <= x
intros; case (Rtotal_order (cos x) (cos y)); intro H4; [ left; apply (cos_decreasing_0 x y H H0 H1 H2 H4) | elim H4; intro H5; [ case (Rtotal_order x y); intro H6; [ generalize (cos_decreasing_1 x y H H0 H1 H2 H6); intro H8; rewrite H5 in H8; elim (Rlt_irrefl (cos y) H8) | elim H6; intro H7; [ right; symmetry in |- *; assumption | left; assumption ] ] | elim (Rlt_irrefl (cos x) (Rle_lt_trans (cos x) (cos y) (cos x) H3 H5)) ] ]. Qed.

forall x y : R, 0 <= x -> x <= PI -> 0 <= y -> y <= PI -> x <= y -> cos y <= cos x

forall x y : R, 0 <= x -> x <= PI -> 0 <= y -> y <= PI -> x <= y -> cos y <= cos x
intros; case (Rtotal_order x y); intro H4; [ left; apply (cos_decreasing_1 x y H H0 H1 H2 H4) | elim H4; intro H5; [ case (Rtotal_order (cos x) (cos y)); intro H6; [ generalize (cos_decreasing_0 x y H H0 H1 H2 H6); intro H8; rewrite H5 in H8; elim (Rlt_irrefl y H8) | elim H6; intro H7; [ right; symmetry in |- *; assumption | left; assumption ] ] | elim (Rlt_irrefl x (Rle_lt_trans x y x H3 H5)) ] ]. Qed.

forall x y : R, - (PI / 4) <= x -> x <= PI / 4 -> - (PI / 4) <= y -> y <= PI / 4 -> tan x <= tan y -> x <= y

forall x y : R, - (PI / 4) <= x -> x <= PI / 4 -> - (PI / 4) <= y -> y <= PI / 4 -> tan x <= tan y -> x <= y
intros; case (Rtotal_order (tan x) (tan y)); intro H4; [ left; apply (tan_increasing_0 x y H H0 H1 H2 H4) | elim H4; intro H5; [ case (Rtotal_order x y); intro H6; [ left; assumption | elim H6; intro H7; [ right; assumption | generalize (tan_increasing_1 y x H1 H2 H H0 H7); intro H8; rewrite H5 in H8; elim (Rlt_irrefl (tan y) H8) ] ] | elim (Rlt_irrefl (tan x) (Rle_lt_trans (tan x) (tan y) (tan x) H3 H5)) ] ]. Qed.

forall x y : R, - (PI / 4) <= x -> x <= PI / 4 -> - (PI / 4) <= y -> y <= PI / 4 -> x <= y -> tan x <= tan y

forall x y : R, - (PI / 4) <= x -> x <= PI / 4 -> - (PI / 4) <= y -> y <= PI / 4 -> x <= y -> tan x <= tan y
intros; case (Rtotal_order x y); intro H4; [ left; apply (tan_increasing_1 x y H H0 H1 H2 H4) | elim H4; intro H5; [ case (Rtotal_order (tan x) (tan y)); intro H6; [ left; assumption | elim H6; intro H7; [ right; assumption | generalize (tan_increasing_0 y x H1 H2 H H0 H7); intro H8; rewrite H5 in H8; elim (Rlt_irrefl y H8) ] ] | elim (Rlt_irrefl x (Rle_lt_trans x y x H3 H5)) ] ]. Qed. (**********)

forall x : R, (exists k : Z, x = IZR k * PI) -> sin x = 0

forall x : R, (exists k : Z, x = IZR k * PI) -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI

sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI

sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI

x0 = 0%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 > 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:x0 = 0%Z

sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 > 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = 0 * PI
H1:x0 = 0%Z

sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 > 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = 0 * PI
H1:x0 = 0%Z

sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 > 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI

(x0 > 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z

sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z

(0 <= x0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z

sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
x1:nat
H3:x0 = Z.of_nat x1

sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = IZR (Z.of_nat x1) * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1

sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1

sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1

sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)

sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = (2 * x2)%nat

sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)
sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = (2 * x2)%nat

sin (INR (2 * x2) * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)
sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = (2 * x2)%nat

sin (INR 2 * INR x2 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)
sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = (2 * x2)%nat

sin ((1 + 1) * INR x2 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)
sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = (2 * x2)%nat

sin (0 + (1 + 1) * INR x2 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)
sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = (2 * x2)%nat

sin 0 = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)
sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

sin (INR (S (2 * x2)) * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

sin ((INR 2 * INR x2 + 1) * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

sin (((1 + 1) * INR x2 + 1) * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

sin ((1 + 1) * INR x2 * PI + 1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

sin ((1 + 1) * INR x2 * PI) * cos PI + cos ((1 + 1) * INR x2 * PI) * sin PI = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

sin ((1 + 1) * INR x2 * PI) * cos PI + cos ((1 + 1) * INR x2 * PI) * 0 = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

sin ((1 + 1) * INR x2 * PI) * cos PI + 0 = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

sin (0 + (1 + 1) * INR x2 * PI) * cos PI + 0 = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
x1:nat
H0:x = INR x1 * PI
H1:(x0 > 0)%Z
H2:(0 <= x0)%Z
H3:x0 = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

sin 0 * cos PI + 0 = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z

(0 <= x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z

0 <= IZR x0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z

(0 < x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
H2:forall n m : Z, (n > m)%Z <-> (m < n)%Z

(0 < x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 > 0)%Z
H2:forall n m : Z, (n > m)%Z <-> (m < n)%Z
H3:(x0 > 0)%Z -> (0 < x0)%Z
H4:(0 < x0)%Z -> (x0 > 0)%Z

(0 < x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI

(x0 < 0)%Z -> sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

sin x = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

sin (IZR x0 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

- sin (- IZR x0 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

(0 <= - x0)%Z -> - sin (- IZR x0 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z

- sin (- IZR x0 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z

- sin (IZR (- x0) * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1

- sin (IZR (- x0) * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1

- sin (IZR (Z.of_nat x1) * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1

- sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)

- sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = (2 * x2)%nat

- sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)
- sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = (2 * x2)%nat

- sin (INR (2 * x2) * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)
- sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = (2 * x2)%nat

- sin (INR 2 * INR x2 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)
- sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = (2 * x2)%nat

- sin ((1 + 1) * INR x2 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)
- sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = (2 * x2)%nat

- sin (0 + (1 + 1) * INR x2 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)
- sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = (2 * x2)%nat

- sin 0 = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)
- sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

- sin (INR x1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

- sin (INR (S (2 * x2)) * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

- sin ((INR 2 * INR x2 + 1) * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

- sin (((1 + 1) * INR x2 + 1) * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

- sin ((1 + 1) * INR x2 * PI + 1 * PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

- (sin ((1 + 1) * INR x2 * PI) * cos PI + cos ((1 + 1) * INR x2 * PI) * sin PI) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

- (sin ((1 + 1) * INR x2 * PI) * cos PI + cos ((1 + 1) * INR x2 * PI) * 0) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

- (sin ((1 + 1) * INR x2 * PI) * cos PI + 0) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

- (sin (0 + (1 + 1) * INR x2 * PI) * cos PI + 0) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
H2:(0 <= - x0)%Z
x1:nat
H3:(- x0)%Z = Z.of_nat x1
x2:nat
H4:x1 = (2 * x2)%nat \/ x1 = S (2 * x2)
H5:x1 = S (2 * x2)

- (sin 0 * cos PI + 0) = 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

(0 <= - x0)%Z
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

0 <= IZR (- x0)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

IZR x0 + 0 <= IZR x0 + IZR (- x0)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

IZR x0 <= IZR x0 + IZR (- x0)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

IZR x0 <= IZR x0 + - IZR x0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

IZR x0 <= 0
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z
- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

- sin (- IZR x0 * PI) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

sin (- (- IZR x0 * PI)) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

sin (- - (IZR x0 * PI)) = sin (IZR x0 * PI)
x:R
H:exists k : Z, x = IZR k * PI
x0:Z
H0:x = IZR x0 * PI
H1:(x0 < 0)%Z

sin (IZR x0 * PI) = sin (IZR x0 * PI)
reflexivity. Qed.
x:R

sin x = 0 -> exists k : Z, x = IZR k * PI
x:R

sin x = 0 -> exists k : Z, x = IZR k * PI
x:R
Hx:sin x = 0

exists k : Z, x = IZR k * PI
x:R
Hx:sin x = 0
q:Z
r:R
EQ:x = IZR q * PI + r
Hr:0 <= r
Hr':r < Rabs PI

exists k : Z, x = IZR k * PI
x:R
Hx:sin x = 0
q:Z
r:R
EQ:x = IZR q * PI + r
Hr:0 <= r
Hr':r < Rabs PI

x = IZR q * PI
x:R
Hx:sin x = 0
q:Z
r:R
EQ:x = IZR q * PI + r
Hr:0 <= r
Hr':r < Rabs PI

x = IZR q * PI + 0
q:Z
r:R
Hx:sin (IZR q * PI + r) = 0
Hr:0 <= r
Hr':r < Rabs PI

IZR q * PI + r = IZR q * PI + 0
q:Z
r:R
Hx:sin (IZR q * PI + r) = 0
Hr:0 <= r
Hr':r < Rabs PI

r = 0
q:Z
r:R
Hx:sin (IZR q * PI) * cos r + cos (IZR q * PI) * sin r = 0
Hr:0 <= r
Hr':r < Rabs PI

r = 0
q:Z
r:R
Hx:sin (IZR q * PI) * cos r + cos (IZR q * PI) * sin r = 0
Hr:0 <= r
Hr':r < Rabs PI
H:sin (IZR q * PI) = 0

r = 0
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 <= r
Hr':r < Rabs PI
H:sin (IZR q * PI) = 0

r = 0
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 <= r
Hr':r < Rabs PI
H:sin (IZR q * PI) = 0
H':cos (IZR q * PI) = 0

r = 0
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 <= r
Hr':r < Rabs PI
H:sin (IZR q * PI) = 0
H':sin r = 0
r = 0
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 <= r
Hr':r < Rabs PI
H:sin (IZR q * PI) = 0
H':cos (IZR q * PI) = 0

r = 0
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 <= r
Hr':r < Rabs PI
H:sin (IZR q * PI) = 0
H':cos (IZR q * PI) = 0

False
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 <= r
Hr':r < Rabs PI
H:sin (IZR q * PI) = 0
H':cos (IZR q * PI) = 0

(sin (IZR q * PI))² + (cos (IZR q * PI))² = 1 -> False
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 <= r
Hr':r < Rabs PI
H:sin (IZR q * PI) = 0
H':cos (IZR q * PI) = 0

0 = 1 -> False
intros; now apply R1_neq_R0.
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 <= r
Hr':r < Rabs PI
H:sin (IZR q * PI) = 0
H':sin r = 0

r = 0
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 <= r
Hr':r < PI
H:sin (IZR q * PI) = 0
H':sin r = 0

r = 0
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 < r
Hr':r < PI
H:sin (IZR q * PI) = 0
H':sin r = 0

r = 0
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 < r
Hr':r < PI
H:sin (IZR q * PI) = 0
H':sin r = 0

False
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 < r
Hr':r < PI
H:sin (IZR q * PI) = 0
H':sin r = 0

0 < sin r -> False
q:Z
r:R
Hx:cos (IZR q * PI) * sin r = 0
Hr:0 < r
Hr':r < PI
H:sin (IZR q * PI) = 0
H':sin r = 0

0 < 0 -> False
apply Rlt_irrefl. Qed.
x:R

cos x = 0 -> exists k : Z, x = IZR k * PI + PI / 2
x:R

cos x = 0 -> exists k : Z, x = IZR k * PI + PI / 2
x:R

sin (PI / 2 + x) = 0 -> exists k : Z, x = IZR k * PI + PI / 2
x:R
Hx:sin (PI / 2 + x) = 0

exists k : Z, x = IZR k * PI + PI / 2
x:R
Hx:sin (PI / 2 + x) = 0
k:Z
Hk:PI / 2 + x = IZR k * PI

exists k0 : Z, x = IZR k0 * PI + PI / 2
x:R
k:Z
Hk:PI / 2 + x = IZR k * PI

exists k0 : Z, x = IZR k0 * PI + PI / 2
x:R
k:Z
Hk:PI / 2 + x = IZR k * PI

x = IZR (k - 1) * PI + PI / 2
x:R
k:Z
Hk:PI / 2 + x = IZR k * PI

x = (IZR k - 1) * PI + PI / 2
x:R
k:Z
Hk:IZR k * PI = PI / 2 + x

x = (IZR k - 1) * PI + PI / 2
x:R
k:Z
Hk:IZR k * PI = PI / 2 + x

x = (- PI + 2 * (PI / 2) + 2 * x) / 2
field. Qed.
x:R

(exists k : Z, x = IZR k * PI + PI / 2) -> cos x = 0
x:R

(exists k : Z, x = IZR k * PI + PI / 2) -> cos x = 0
x:R

(exists k : Z, x = IZR k * PI + PI / 2) -> sin (PI / 2 + x) = 0
k:Z

sin (PI / 2 + (IZR k * PI + PI / 2)) = 0
k:Z

sin (IZR k * PI + PI) = 0
k:Z

- sin (IZR k * PI) = - 0
k:Z

sin (IZR k * PI) = 0
k:Z

exists k0 : Z, IZR k * PI = IZR k0 * PI
now exists k. Qed.
x:R

0 <= x -> x <= 2 * PI -> sin x = 0 -> x = 0 \/ x = PI \/ x = 2 * PI
x:R

0 <= x -> x <= 2 * PI -> sin x = 0 -> x = 0 \/ x = PI \/ x = 2 * PI
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin x = 0

x = 0 \/ x = PI \/ x = 2 * PI
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin x = 0
k:Z
Hk:x = IZR k * PI

x = 0 \/ x = PI \/ x = 2 * PI
x:R
Lo:0 <= x
Hi:x <= 2 * PI
k:Z
Hk:x = IZR k * PI

x = 0 \/ x = PI \/ x = 2 * PI
x:R
Lo:0 <= x
Hi:x <= 2 * PI
k:Z
Hk:x = IZR k * PI
Hx:PI < x

x = 0 \/ x = PI \/ x = 2 * PI
x:R
Lo:0 <= x
Hi:x <= 2 * PI
k:Z
Hk:x = IZR k * PI
Hx:PI = x
x = 0 \/ x = PI \/ x = 2 * PI
x:R
Lo:0 <= x
Hi:x <= 2 * PI
k:Z
Hk:x = IZR k * PI
Hx:PI > x
x = 0 \/ x = PI \/ x = 2 * PI
x:R
Lo:0 <= x
Hi:x <= 2 * PI
k:Z
Hk:x = IZR k * PI
Hx:PI < x

x = 0 \/ x = PI \/ x = 2 * PI
x:R
Lo:0 <= x
Hi:x <= 2 * PI
k:Z
Hk:x = IZR k * PI
Hx:PI < x

x = 2 * PI
x:R
Hi:x <= 2 * PI
k:Z
Hk:x = IZR k * PI
Hx:PI < x

x = 2 * PI
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

IZR k * PI = 2 * PI
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

IZR k = 2
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

IZR k = IZR (- -2)
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

k = (- -2)%Z
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

(-2 + k)%Z = 0%Z
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

-1 < IZR (-2 + k) < 1
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

-1 < -2 + IZR k < 1
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

-1 < -2 + IZR k
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI
-2 + IZR k < 1
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

-1 < -2 + IZR k
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

-2 + 1 < -2 + IZR k
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

1 < IZR k
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

1 * PI < IZR k * PI
now rewrite Rmult_1_l.
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

-2 + IZR k < 1
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

-2 + IZR k <= 0
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

-2 + IZR k <= -2 + 2
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

IZR k <= 2
k:Z
Hi:IZR k * PI <= 2 * PI
Hx:PI < IZR k * PI

IZR k * PI <= 2 * PI
trivial.
x:R
Lo:0 <= x
Hi:x <= 2 * PI
k:Z
Hk:x = IZR k * PI
Hx:PI = x

x = 0 \/ x = PI \/ x = 2 * PI
right; left; auto.
x:R
Lo:0 <= x
Hi:x <= 2 * PI
k:Z
Hk:x = IZR k * PI
Hx:PI > x

x = 0 \/ x = PI \/ x = 2 * PI
x:R
Lo:0 <= x
Hi:x <= 2 * PI
k:Z
Hk:x = IZR k * PI
Hx:PI > x

x = 0
x:R
Lo:0 <= x
k:Z
Hk:x = IZR k * PI
Hx:PI > x

x = 0
k:Z
Lo:0 <= IZR k * PI
Hx:PI > IZR k * PI

IZR k * PI = 0
k:Z
Lo:0 <= IZR k * PI
Hx:PI > IZR k * PI

IZR k * PI = 0 * PI
k:Z
Lo:0 <= IZR k * PI
Hx:PI > IZR k * PI

IZR k = 0
k:Z
Lo:0 <= IZR k * PI
Hx:PI > IZR k * PI

k = 0%Z
k:Z
Lo:0 <= IZR k * PI
Hx:PI > IZR k * PI

-1 < IZR k < 1
k:Z
Lo:0 <= IZR k * PI
Hx:PI > IZR k * PI

-1 < IZR k
k:Z
Lo:0 <= IZR k * PI
Hx:PI > IZR k * PI
IZR k < 1
k:Z
Lo:0 <= IZR k * PI
Hx:PI > IZR k * PI

-1 < IZR k
k:Z
Lo:0 <= IZR k * PI
Hx:PI > IZR k * PI

0 <= IZR k
k:Z
Lo:0 <= IZR k * PI
Hx:PI > IZR k * PI

0 * PI <= IZR k * PI
now rewrite Rmult_0_l.
k:Z
Lo:0 <= IZR k * PI
Hx:PI > IZR k * PI

IZR k < 1
k:Z
Lo:0 <= IZR k * PI
Hx:PI > IZR k * PI

IZR k * PI < 1 * PI
now rewrite Rmult_1_l. Qed.
x:R

0 <= x -> x <= 2 * PI -> x = 0 \/ x = PI \/ x = 2 * PI -> sin x = 0
x:R

0 <= x -> x <= 2 * PI -> x = 0 \/ x = PI \/ x = 2 * PI -> sin x = 0

sin 0 = 0

sin PI = 0

sin (2 * PI) = 0

sin 0 = 0
now rewrite sin_0.

sin PI = 0
now rewrite sin_PI.

sin (2 * PI) = 0
now rewrite sin_2PI. Qed.
x:R

0 <= x -> x <= 2 * PI -> cos x = 0 -> x = PI / 2 \/ x = 3 * (PI / 2)
x:R

0 <= x -> x <= 2 * PI -> cos x = 0 -> x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:cos x = 0

x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:cos x = 0
LT:x < 3 * (PI / 2)

x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:cos x = 0
EQ:x = 3 * (PI / 2)
x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:cos x = 0
GT:x > 3 * (PI / 2)
x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:cos x = 0
LT:x < 3 * (PI / 2)

x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)

x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)

0 <= PI / 2 + x
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)

0 <= PI / 2 + x
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)

0 <= PI / 2
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
0 <= x
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)

0 <= x
trivial.
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x

x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x

PI / 2 + x <= 2 * PI
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x

PI / 2 + x <= 2 * PI
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x

PI / 2 + x < 2 * PI
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x

PI / 2 + x < PI / 2 + 3 * (PI / 2)
now apply Rplus_lt_compat_l.
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI

x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:PI / 2 + x = 0

x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:PI / 2 + x = PI
x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:PI / 2 + x = 2 * PI
x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:PI / 2 + x = 0

x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:PI / 2 + x = 0

False
x:R
Lo:PI / 2 + 0 <= PI / 2 + x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:PI / 2 + x = 0

False
x:R
Lo:PI / 2 <= 0
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:PI / 2 + x = 0

False
apply (Rlt_irrefl 0 (Rlt_le_trans 0 (PI / 2) 0 PI2_RGT_0 Lo)).
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:PI / 2 + x = PI

x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:PI / 2 + x = PI

x = PI / 2
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:- (PI / 2) + (PI / 2 + x) = - (PI / 2) + PI

x = PI / 2
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:x = - (PI / 2) + PI

x = PI / 2
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:x = - (PI / 2) + PI

- (PI / 2) + PI = PI / 2
field.
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:PI / 2 + x = 2 * PI

x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:PI / 2 + x = 2 * PI

x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:- (PI / 2) + (PI / 2 + x) = - (PI / 2) + 2 * PI

x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:x = - (PI / 2) + 2 * PI

x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:sin (PI / 2 + x) = 0
LT:x < 3 * (PI / 2)
Lo':0 <= PI / 2 + x
Hi':PI / 2 + x <= 2 * PI
H:x = - (PI / 2) + 2 * PI

- (PI / 2) + 2 * PI = 3 * (PI / 2)
field.
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:cos x = 0
EQ:x = 3 * (PI / 2)

x = PI / 2 \/ x = 3 * (PI / 2)
now right.
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:cos x = 0
GT:x > 3 * (PI / 2)

x = PI / 2 \/ x = 3 * (PI / 2)
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:cos x = 0
GT:x > 3 * (PI / 2)

False
x:R
Lo:0 <= x
Hi:x <= 2 * PI
Hx:cos x = 0
GT:x > 3 * (PI / 2)
k:Z
Hk:x = IZR k * PI + PI / 2

False
x:R
Hi:x <= 2 * PI
GT:x > 3 * (PI / 2)
k:Z
Hk:x = IZR k * PI + PI / 2

False
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI

False
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI

(k < 2)%Z
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI
LT:(k < 2)%Z
False
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI

(k < 2)%Z
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI

IZR k < 2
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI

IZR k < 2
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI

IZR k * PI < 2 * PI
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI

IZR k * PI < IZR k * PI + PI / 2
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI

IZR k * PI + 0 < IZR k * PI + PI / 2
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI

0 < PI / 2
apply PI2_RGT_0.
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI
LT:(k < 2)%Z

False
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI
LT:(k < 2)%Z

(1 < k)%Z
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI
LT:(k < 2)%Z
GT':(1 < k)%Z
False
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI
LT:(k < 2)%Z

(1 < k)%Z
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI
LT:(k < 2)%Z

1 < IZR k
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI
LT:(k < 2)%Z

1 < IZR k
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI
LT:(k < 2)%Z

PI < IZR k * PI
k:Z
GT:IZR k * PI + PI / 2 > PI / 2 + PI
Hi:IZR k * PI + PI / 2 <= 2 * PI
LT:(k < 2)%Z

PI < IZR k * PI
k:Z
GT:PI / 2 + IZR k * PI > PI / 2 + PI
Hi:IZR k * PI + PI / 2 <= 2 * PI
LT:(k < 2)%Z

PI < IZR k * PI
now apply Rplus_lt_reg_l in GT.
k:Z
GT:IZR k * PI + PI / 2 > 3 * (PI / 2)
Hi:IZR k * PI + PI / 2 <= 2 * PI
LT:(k < 2)%Z
GT':(1 < k)%Z

False
omega. Qed.
x:R

0 <= x -> x <= 2 * PI -> x = PI / 2 \/ x = 3 * (PI / 2) -> cos x = 0
x:R

0 <= x -> x <= 2 * PI -> x = PI / 2 \/ x = 3 * (PI / 2) -> cos x = 0
Hi:PI / 2 <= 2 * PI
Lo:0 <= PI / 2

cos (PI / 2) = 0
Hi:3 * (PI / 2) <= 2 * PI
Lo:0 <= 3 * (PI / 2)
cos (3 * (PI / 2)) = 0
Hi:PI / 2 <= 2 * PI
Lo:0 <= PI / 2

cos (PI / 2) = 0
now rewrite cos_PI2.
Hi:3 * (PI / 2) <= 2 * PI
Lo:0 <= 3 * (PI / 2)

cos (3 * (PI / 2)) = 0
now rewrite cos_3PI2. Qed.