Update
This commit is contained in:
parent
85bda82049
commit
9ad87a7470
@ -500,17 +500,13 @@ Proof.
|
||||
Qed.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Theorem subsequence_split {X: Type} :
|
||||
Theorem Subsequence_split {X: Type} :
|
||||
forall (u v w: list X),
|
||||
subsequence (u++v) w
|
||||
-> (exists a b, w = a++b /\ (subsequence u a) /\ subsequence v b).
|
||||
Subsequence (u++v) w
|
||||
-> (exists a b, w = a++b /\ (Subsequence u a) /\ Subsequence v b).
|
||||
Proof.
|
||||
intros u v w. intro H.
|
||||
apply subsequence_eq_def_1 in H. destruct H. destruct H.
|
||||
apply Subsequence_bools in H. destruct H. destruct H.
|
||||
|
||||
assert (forall (b: list bool) (u v: list X),
|
||||
length b = length (u++v)
|
||||
@ -535,13 +531,18 @@ Proof.
|
||||
destruct h. apply PeanoNat.Nat.neq_succ_0 in I. contradiction.
|
||||
simpl. rewrite IHg. reflexivity. inversion I. reflexivity.
|
||||
rewrite L. rewrite <- H. split. assumption.
|
||||
split; apply subsequence_eq_def_3; apply subsequence_eq_def_2;
|
||||
split; apply Subsequence_bools;
|
||||
[ exists x0 | exists x1]; split; try assumption; reflexivity.
|
||||
|
||||
assumption.
|
||||
Qed.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Theorem subsequence_split_2 {X: Type} :
|
||||
forall (u v w: list X),
|
||||
subsequence u (v++w)
|
||||
|
Loading…
Reference in New Issue
Block a user