(**********)
Definition xi : R -> R := x intr.Definition yi : R -> R := y intr.Definition vi : TypeSpeed := h intr.Definition xP (t : R) : R := (xi t - xi 0)%R.Definition yP (t : R) : R := (yi t - yi 0)%R.Definition u (eps : posreal) (t : R) : R :=
  sqrt (Rsqr (xP t) + Rsqr (yP t) + Rsqr eps).Definition u0 (t : R) : R := sqrt (Rsqr (xP t) + Rsqr (yP t)).

(* Specifications: *)
Lemma xi_derivable : derivable xi.
Lemma yi_derivable : derivable yi.
Lemma xP_derivable : derivable xP.
Lemma yP_derivable : derivable yP.
Lemma d_u : forall eps : posreal, derivable (fun t : R => u eps t).
Lemma fct_der2 : forall (eps : posreal) (t : R), derivable_pt (fun y : R => Rsqr (u eps y)) t.
Lemma D_Rsqr_u_epsilon_1 : forall (eps : posreal) (t : R), derive_pt (fun y : R => Rsqr (u eps y)) t (fct_der2 eps t) = (2 * u eps t * derive_pt (u eps) t (d_u eps t))%R.
Lemma xP_derive : forall t : R, derive_pt xP t (xP_derivable t) = derive_pt xi t (xi_derivable t).
Lemma yP_derive : forall t : R, derive_pt yP t (yP_derivable t) = derive_pt yi t (yi_derivable t).
Lemma fct_der3 : forall (eps : posreal) (t : R), derivable_pt (fun y : R => (Rsqr (xP y) + (Rsqr (yP y) + Rsqr eps))%R) t.
Lemma D_Rsqr_u_epsilon_2 : forall (eps : posreal) (t : R), (derive_pt (fun y : R => Rsqr (u eps y)) t (fct_der2 eps t) <= 2 * u0 t * vi)%R.
Lemma u_stric_pos : forall (eps : posreal) (t : R), (0 < u eps t)%R.
Lemma u_pos : forall (eps : posreal) (t : R), (0 <= u eps t)%R.
Lemma u0_pos : forall t : R, (0 <= u0 t)%R.
Lemma Rsqr_u_epsilon : forall (eps : posreal) (t : R), Rsqr (u eps t) = (Rsqr (u0 t) + Rsqr eps)%R.
Lemma u0_u_epsilon : forall (eps : posreal) (t : R), (u0 t <= u eps t)%R.
Lemma u_epsilon_le_v : forall (eps : posreal) (t : R), (derive_pt (u eps) t (d_u eps t) <= vi)%R.
Lemma vit_derivable : derivable (fun t : R => (vi * t)%R).
Lemma derive_vit : forall t : R, derive_pt (fun t : R => (vi * t)%R) t (vit_derivable t) = vi.
Lemma u_epsilon_le_vt : forall (eps : posreal) (t : R), (0 <= t)%R -> (u eps t - eps <= vi * t)%R.
Lemma Rsqr_u : forall (eps : posreal) (t : R), (0 <= t)%R -> (Rsqr (u0 t) <= Rsqr vi * Rsqr t + 2 * eps * vi * t)%R.
Lemma Rsqr_u_Rsqr_vt : forall (eps : posreal) (t : R), (0 <= t)%R -> (Rsqr (u0 t) <= Rsqr vi * Rsqr t + eps)%R.
Theorem YCNGFTYS : forall t : R, (0 <= t)%R -> (sqrt (Rsqr (xi t - xi 0) + Rsqr (yi t - yi 0)) <= v vi * t)%R.