Proof with Geometry.
intros.
unfold on_parallel_d in H.
DecompAndAll.
assert (~R=Y).
unfold not;intro;subst R...
assert (parallel R Y P Q)...
assert (Th:= (on_line_dex_spec_strong_f R Y P Q H4 H)).
DecompExAnd Th T.
assert (A<>Y).
unfold not;intro;subst...
assert (Th:= (on_line_dex_spec_strong_f A Y C D H2 H7)).
DecompExAnd Th SS.
assert (A**Y / A**SS = (S A R T) / (S4 A R SS T)).
apply co_side_ter...
assert (Col Y A SS)...
assert (Col Y R T)...
eapply common_point_not_par.
apply H9.
auto.
unfold not;intro;subst SS.
basic_simpl.
assert (C=D)...
unfold not;intro;subst T.
basic_simpl.
assert (P=Q)...
Geometry.
rewrite H14 in H9.
rewrite H9.
assert ((S A R T) = (S4 A P R Q)).
apply l2_12b_strong_3...
rewrite H13.
suppose ((S4 A R SS T) = (S4 C P D Q)).
congruence.
assert (weak_3_parallelogram C D SS A)...
assert ((S4 C R D T) = (S4 C P D Q)).
apply l2_11b_strong_strong_strong...
rewrite <- H17.
symmetry.
assert ((S4 C R D T) = -(S4 R C T D)).
Geometry.
assert ((S4 A R SS T) = -(S4 R A T SS)).
Geometry.
assert ((S4 R C T D) = (S4 R A T SS)).
apply l2_11b_strong_strong_strong.
trivial.
congruence.
Qed.
(** This lemma is here because the proof depends on ratios elimination lemmas *)

(* Specifications: *)
Lemma elim_area_on_inter_parallel_parallel :
forall P Q R U V W Y A B : Point,
on_inter_parallel_parallel Y R P Q W U V ->
R <> Y ->
S A B Y = S4 P W Q R / S4 P U Q V * S4 A U B V + S A B W.