Skip to content
Snippets Groups Projects
Commit deb87cfd authored by Robbert Krebbers's avatar Robbert Krebbers
Browse files

Reorganize and extend test file for `multiset_solver`.

parent 1efc3af6
No related branches found
No related tags found
1 merge request!231Many improvements to `multiset_solver`
...@@ -5,16 +5,65 @@ Section test. ...@@ -5,16 +5,65 @@ Section test.
Implicit Types x y : A. Implicit Types x y : A.
Implicit Types X Y : gmultiset A. Implicit Types X Y : gmultiset A.
Lemma test1 x y X : {[x]} ({[y]} X) . Lemma test_eq_1 x y X : {[x]} ({[y]} X) = {[y]} ({[x]} X).
Proof. multiset_solver. Qed. Proof. multiset_solver. Qed.
Lemma test2 x y X : {[x]} ({[y]} X) = {[y]} ({[x]} X). Lemma test_eq_2 x y z X Y :
Proof. multiset_solver. Qed.
Lemma test3 x : {[x]} ≠@{gmultiset A} ∅.
Proof. multiset_solver. Qed.
Lemma test4 x y z X Y :
{[z]} X = {[y]} Y {[z]} X = {[y]} Y
{[x]} ({[z]} X) = {[y]} ({[x]} Y). {[x]} ({[z]} X) = {[y]} ({[x]} Y).
Proof. multiset_solver. Qed. Proof. multiset_solver. Qed.
Lemma test5 X x : X = {[x]} X ≠@{gmultiset A} ∅.
Lemma test_neq_1 x y X : {[x]} ({[y]} X) ∅.
Proof. multiset_solver. Qed.
Lemma test_neq_2 x : {[x]} ≠@{gmultiset A} ∅.
Proof. multiset_solver. Qed.
Lemma test_neq_3 X x : X = {[x]} X ≠@{gmultiset A} ∅.
Proof. multiset_solver. Qed.
Lemma test_neq_4 x y : {[ x ]} {[ y ]} ≠@{gmultiset A} x y.
Proof. multiset_solver. Qed.
Lemma test_neq_5 x y Y : y Y {[ x ]} Y x y.
Proof. multiset_solver. Qed.
Lemma test_multiplicity_1 x X Y :
2 < multiplicity x X X Y 1 < multiplicity x Y.
Proof. multiset_solver. Qed.
Lemma test_multiplicity_2 x X :
2 < multiplicity x X {[ x ]} {[ x ]} {[ x ]} X.
Proof. multiset_solver. Qed.
Lemma test_multiplicity_3 x X :
multiplicity x X < 3 {[ x ]} {[ x ]} {[ x ]} X.
Proof. multiset_solver. Qed.
Lemma test_elem_of_1 x X : x X {[x]} X.
Proof. multiset_solver. Qed.
Lemma test_elem_of_2 x y X : x y x X y X {[x]} {[y]} X.
Proof. multiset_solver. Qed.
Lemma test_elem_of_3 x y X Y : x y x X y Y {[x]} {[y]} X Y.
Proof. multiset_solver. Qed.
Lemma test_elem_of_4 x y X Y : x y x X y Y {[x]} (X Y) {[ y ]}.
Proof. multiset_solver. Qed.
Lemma test_big_1 x1 x2 x3 x4 :
{[ x1 ]} {[ x2 ]} {[ x3 ]} {[ x4 ]} {[ x4 ]} ⊆@{gmultiset A}
{[ x1 ]} {[ x1 ]} {[ x2 ]} {[ x3 ]} {[ x4 ]} {[ x4 ]}.
Proof. multiset_solver. Qed.
Lemma test_big_2 x1 x2 x3 x4 X :
2 multiplicity x4 X
{[ x1 ]} {[ x2 ]} {[ x3 ]} {[ x4 ]} {[ x4 ]} ⊆@{gmultiset A}
{[ x1 ]} {[ x1 ]} {[ x2 ]} {[ x3 ]} X.
Proof. multiset_solver. Qed.
Lemma test_big_3 x1 x2 x3 x4 X :
4 multiplicity x4 X
{[ x1 ]} {[ x2 ]} {[ x3 ]} {[ x4 ]} {[ x4 ]}
{[ x1 ]} {[ x2 ]} {[ x3 ]} {[ x4 ]} {[ x4 ]}
⊆@{gmultiset A}
{[ x1 ]} {[ x1 ]} {[ x2 ]} {[ x3 ]}
{[ x1 ]} {[ x1 ]} {[ x2 ]} {[ x3 ]} X.
Proof. multiset_solver. Qed.
Lemma test_big_4 x1 x2 x3 x4 x5 x6 x7 x8 x9 :
{[ x1 ]} {[ x2 ]} {[ x3 ]} {[ x4 ]} {[ x4 ]}
{[ x5 ]} {[ x6 ]} {[ x7 ]} {[ x8 ]} {[ x8 ]} {[ x9 ]}
⊆@{gmultiset A}
{[ x1 ]} {[ x1 ]} {[ x2 ]} {[ x3 ]} {[ x4 ]} {[ x4 ]}
{[ x5 ]} {[ x5 ]} {[ x6 ]} {[ x7 ]} {[ x9 ]} {[ x8 ]} {[ x8 ]}.
Proof. multiset_solver. Qed. Proof. multiset_solver. Qed.
End test. End test.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment