Definition Bessel1 (n : nat) (x : R) :=
(x/2)^n * PSeries (Bessel1_seq n) ((x/2)^2).

(* Specifications: *)
Lemma is_derive_Bessel1 (n : nat) (x : R) :
is_derive (Bessel1 n) x
((x / 2) ^ S n * PSeries (PS_derive (Bessel1_seq n)) ((x / 2) ^ 2)
+ (INR n)/2 * (x / 2) ^ pred n * PSeries (Bessel1_seq n) ((x / 2) ^ 2)).
Lemma is_derive_2_Bessel1 (n : nat) (x : R) :
is_derive_n (Bessel1 n) 2 x
(((x/2)^(S (S n)) * PSeries (PS_derive (PS_derive (Bessel1_seq n))) ((x / 2) ^ 2))
+ ((INR (2*n+1)/2) * (x/2)^n * PSeries (PS_derive (Bessel1_seq n)) ((x / 2) ^ 2))
+ (INR (n * pred n) / 4 * (x / 2) ^ pred (pred n) * PSeries (Bessel1_seq n) ((x / 2) ^ 2))).
Lemma Bessel1_correct (n : nat) (x : R) :
x^2 * Derive_n (Bessel1 n) 2 x + x * Derive (Bessel1 n) x + (x^2 - (INR n)^2) * Bessel1 n x = 0.
Lemma Bessel1_equality_1 (n : nat) (x : R) : x <> 0
-> Bessel1 (S n)%nat x = INR n * Bessel1 n x / x - Derive (Bessel1 n) x.
Lemma Bessel1_equality_2 (n : nat) (x : R) : (0 < n)%nat -> x<>0
-> Bessel1 (S n)%nat x + Bessel1 (pred n)%nat x = (2*INR n)/x * Bessel1 n x.
Lemma Bessel1_equality_3 (n : nat) (x : R) : (0 < n)%nat ->
Bessel1 (S n)%nat x - Bessel1 (pred n)%nat x = - 2 * Derive (Bessel1 n) x.