(**********)
Definition Rsqr_Rmin (intruder evader : State) : R :=
  match Req_EM_var (Ax2_R intruder) 0 with
  | left _ => 0%R
  | right _ =>
      ((4 * Ax2_R intruder * C_R intruder evader -
        Rsqr (Bx_R intruder evader)) / (4 * Ax2_R intruder))%R
  end.

(* Specifications: *)
Lemma tmin_0 : forall intruder evader : State, div_tau intruder evader <> 0%R -> tmin intruder evader = (- Bx_R intruder evader / (2 * Ax2_R intruder))%R.
Lemma Ax2_R_0_div_tau : forall intruder evader : State, div_tau intruder evader = 0%R -> Ax2_R intruder = 0%R.
Lemma div_tau_0_Ax2_R : forall intruder evader : State, Ax2_R intruder = 0%R -> div_tau intruder evader = 0%R.
Lemma R_Rmin : forall (intruder evader : State) (t : R), div_tau intruder evader <> 0%R -> Rsqr (RR intruder evader t) = (Ax2_R intruder * Rsqr (t - tmin intruder evader) + Rsqr_Rmin intruder evader)%R.
Lemma dx_dxdt : forall (intruder evader : State) (t : R), (xt intruder - xt evader + t * dxdt intruder)%R = dx intruder evader t.
Lemma dy_dydt : forall (intruder evader : State) (t : R), (yt intruder - yt evader + t * dydt intruder)%R = dy intruder evader t.
Lemma R_equal_when_zero : forall (intruder evader : State) (t1 t2 : R), div_tau intruder evader = 0%R -> RR intruder evader t1 = RR intruder evader t2.
Lemma RR_pos : forall (intruder evader : State) (t : R), (0 <= RR intruder evader t)%R.
Lemma derivative_eq_zero_tmin : forall (intruder evader : State) (t : R), (RR intruder evader (tmin intruder evader) <= RR intruder evader t)%R.
Lemma derivative_eq_zero_min : forall (intruder evader : State) (t1 t2 : R), (RR intruder evader (t1 + tau intruder evader t1) <= RR intruder evader (t1 + t2))%R.
Lemma asymptotic_decrease_tmin : forall (intruder evader : State) (t1 t2 : R), (t2 <= tmin intruder evader)%R -> (t1 <= t2)%R -> (RR intruder evader t2 <= RR intruder evader t1)%R.
Lemma asymptotic_decrease_tau : forall (intruder evader : State) (t t1 t2 : R), (t2 <= tau intruder evader t)%R -> (t1 <= t2)%R -> (RR intruder evader (t + t2) <= RR intruder evader (t + t1))%R.
Lemma asymptotic_increase_tmin : forall (intruder evader : State) (t1 t2 : R), (tmin intruder evader <= t1)%R -> (t1 <= t2)%R -> (RR intruder evader t1 <= RR intruder evader t2)%R.
Lemma asymptotic_increase_tau : forall (intruder evader : State) (t t1 t2 : R), (tau intruder evader t <= t1)%R -> (t1 <= t2)%R -> (RR intruder evader (t + t1) <= RR intruder evader (t + t2))%R.
Lemma tau_equal_when_zero : forall (intruder evader : State) (t : R), div_tau intruder evader = 0%R -> tau intruder evader t = 0%R.
Lemma asymptotic_tau_gt : forall (intruder evader : State) (t dt : R), (0 <= dt)%R -> (RR intruder evader (t + dt) < RR intruder evader t)%R -> (0 < tau intruder evader t)%R.
Lemma tau_is_uniform : forall (intruder evader : State) (t1 t2 : R), div_tau intruder evader <> 0%R -> tau intruder evader (t1 + t2) = (tau intruder evader t1 - t2)%R.
Lemma tau_gt_time : forall (intruder evader : State) (t1 t2 t : R), (t < tau intruder evader t2)%R -> (t1 <= t2)%R -> (t < tau intruder evader t1)%R.
Lemma tau_ge_time : forall (intruder evader : State) (t1 t2 t : R), (t <= tau intruder evader t2)%R -> (t1 <= t2)%R -> (t <= tau intruder evader t1)%R.