Proof with trivial.
intros...
apply Rsqr_incr_0...
rewrite R_T...
rewrite (d_l_beta intr evad T)...
unfold ve in |- *...
rewrite H...
rewrite Rsqr_minus...
repeat rewrite Rsqr_mult...
rewrite cos2...
replace
(Rsqr (l intr evad T) * (1 - Rsqr (sin (beta intr evad T + thetat intr 0))) +
Rsqr V * Rsqr T -
2 * (l intr evad T * cos (beta intr evad T + thetat intr 0)) * (V * T) +
Rsqr (l intr evad T) * Rsqr (sin (beta intr evad T + thetat intr 0)))%R
with
(Rsqr V * Rsqr T + Rsqr (l intr evad T) -
2 * (l intr evad T * cos (beta intr evad T + thetat intr 0)) * (V * T))%R...
unfold Rminus in |- *...
apply Rplus_le_compat_l...
apply Ropp_ge_le_contravar...
apply Rle_ge...
repeat rewrite Rmult_assoc...
apply Rmult_le_compat_l...
left; prove_sup0...
rewrite <- (Rmult_comm (V * T))...
rewrite (Rmult_comm (l intr evad T))...
repeat rewrite Rmult_assoc...
apply Rmult_le_compat_l...
left; apply TypeSpeed_pos...
apply Rmult_le_compat_l...
left; apply Rlt_le_trans with MinT; [ apply MinT_is_pos | apply (cond_1 T) ]...
rewrite <- (Rmult_comm (l intr evad T))...
apply Rmult_le_compat_l...
apply l_is_pos...
unfold Rminus in |- *...
rewrite Rmult_plus_distr_l...
ring...
(*Rewrite H.*)
unfold d in |- *; unfold Die in |- *; apply sqrt_positivity;
apply Rplus_le_le_0_compat; apply Rle_0_sqr...
apply RR_pos...
Qed.

(* Specifications: *)
Lemma cos_no_conflict :
h intr = V ->
h (tr evad) = V ->
Alpha (beta intr evad T) = false ->
(MinDistance T <= l intr evad T)%R ->
(l intr evad T <= MaxDistance T)%R ->
(cos (beta intr evad T + thetat intr 0) <= cos (beta intr evad T))%R ->
Omega (thetat intr 0 + beta intr evad T) = false ->
conflict intr evad T = false.