(** Extensionality *)

(* Specifications: *)
Lemma is_sup_seq_ext (u v : nat -> Rbar) (l : Rbar) :
(forall n, u n = v n)
-> is_sup_seq u l -> is_sup_seq v l.
Lemma is_inf_seq_ext (u v : nat -> Rbar) (l : Rbar) :
(forall n, u n = v n)
-> is_inf_seq u l -> is_inf_seq v l.
Lemma is_LimSup_seq_ext_loc (u v : nat -> R) (l : Rbar) :
eventually (fun n => u n = v n) ->
is_LimSup_seq u l -> is_LimSup_seq v l.
Lemma is_LimSup_seq_ext (u v : nat -> R) (l : Rbar) :
(forall n, u n = v n)
-> is_LimSup_seq u l -> is_LimSup_seq v l.
Lemma is_LimInf_seq_ext_loc (u v : nat -> R) (l : Rbar) :
eventually (fun n => u n = v n) ->
is_LimInf_seq u l -> is_LimInf_seq v l.
Lemma is_LimInf_seq_ext (u v : nat -> R) (l : Rbar) :
(forall n, u n = v n)
-> is_LimInf_seq u l -> is_LimInf_seq v l.
Lemma is_lim_seq_ext_loc (u v : nat -> R) (l : Rbar) :
eventually (fun n => u n = v n) ->
is_lim_seq u l -> is_lim_seq v l.
Lemma ex_lim_seq_ext_loc (u v : nat -> R) :
eventually (fun n => u n = v n) ->
ex_lim_seq u -> ex_lim_seq v.
Lemma Lim_seq_ext_loc (u v : nat -> R) :
eventually (fun n => u n = v n) ->
Lim_seq u = Lim_seq v.
Lemma is_lim_seq_ext (u v : nat -> R) (l : Rbar) :
(forall n, u n = v n) -> is_lim_seq u l -> is_lim_seq v l.
Lemma ex_lim_seq_ext (u v : nat -> R) :
(forall n, u n = v n) -> ex_lim_seq u -> ex_lim_seq v.
Lemma Lim_seq_ext (u v : nat -> R) :
(forall n, u n = v n) ->
Lim_seq u = Lim_seq v.
Lemma is_RInt_ext :
forall (f g : R -> V) (a b : R) (l : V),
(forall x, Rmin a b < x < Rmax a b -> f x = g x) ->
is_RInt f a b l -> is_RInt g a b l.
Lemma ex_RInt_ext :
forall (f g : R -> V) (a b : R),
(forall x, Rmin a b < x < Rmax a b -> f x = g x) ->
ex_RInt f a b -> ex_RInt g a b.
Lemma Riemann_integrable_ext : forall (f g : R -> R) (a b : R),
(forall x, Rmin a b <= x <= Rmax a b -> f x = g x)
-> Riemann_integrable f a b -> Riemann_integrable g a b.
Lemma RiemannInt_ext : forall (f g : R -> R) (a b : R)
(pr_f : Riemann_integrable f a b) (pr_g : Riemann_integrable g a b)
(Heq : forall x, Rmin a b <= x <= Rmax a b -> f x = g x),
RiemannInt pr_f = RiemannInt pr_g.
Lemma Derive_n_ext_loc :
forall f g n x,
locally x (fun t => f t = g t) ->
Derive_n f n x = Derive_n g n x.
Lemma ex_derive_n_ext_loc :
forall f g n x,
locally x (fun t => f t = g t) ->
ex_derive_n f n x -> ex_derive_n g n x.
Lemma is_derive_n_ext_loc :
forall f g n x l,
locally x (fun t => f t = g t) ->
is_derive_n f n x l -> is_derive_n g n x l.
Lemma Derive_n_ext :
forall f g n x,
(forall t, f t = g t) ->
Derive_n f n x = Derive_n g n x.
Lemma ex_derive_n_ext :
forall f g n x,
(forall t, f t = g t) ->
ex_derive_n f n x -> ex_derive_n g n x.
Lemma is_derive_n_ext :
forall f g n x l,
(forall t, f t = g t) ->
is_derive_n f n x l -> is_derive_n g n x l.
Lemma Derive_n_comp: forall f n m x,
Derive_n (Derive_n f m) n x = Derive_n f (n+m) x.
Lemma is_derive_Sn (f : R -> R) (n : nat) (x l : R) :
locally x (ex_derive f) ->
(is_derive_n f (S n) x l <-> is_derive_n (Derive f) n x l).