Rename “assert” statement to “spec”
This commit is contained in:
@@ -1,3 +1,3 @@
|
||||
input: p/2.
|
||||
|
||||
assert: exists X, Y p(X, Y) <-> exists X q(X).
|
||||
spec: exists X, Y p(X, Y) <-> exists X q(X).
|
||||
|
@@ -1,6 +1,6 @@
|
||||
input: p/1.
|
||||
|
||||
assert:
|
||||
spec:
|
||||
forall N
|
||||
(
|
||||
forall X (p(X) -> exists I exists M (I = M and I = X and I <= N))
|
||||
|
@@ -10,7 +10,7 @@ axiom: forall N1, N2, N3 (N1 > N2 and N3 > 0 -> N1 * N3 > N2 * N3).
|
||||
# This axiom is necessary because we use Vampire without higher-order reasoning
|
||||
axiom: (p(0) and forall N (N >= 0 and p(N) -> p(N + 1))) -> (forall N p(N)).
|
||||
|
||||
assert: exists N (forall X (q(X) <-> X = N) and N >= 0 and N * N <= n and (N + 1) * (N + 1) > n).
|
||||
spec: exists N (forall X (q(X) <-> X = N) and N >= 0 and N * N <= n and (N + 1) * (N + 1) > n).
|
||||
|
||||
|
||||
|
||||
|
@@ -18,8 +18,8 @@ output: in/1.
|
||||
assume: forall X, Y (s(X, Y) -> is_int(Y)).
|
||||
|
||||
# Only valid sets can be included in the solution
|
||||
assert: forall X (in(X) -> X >= 1 and X <= n).
|
||||
spec: forall X (in(X) -> X >= 1 and X <= n).
|
||||
# If an element is contained in an input set, it must be covered by all solutions
|
||||
assert: forall X (exists I s(X, I) -> exists I (in(I) and s(X, I))).
|
||||
spec: forall X (exists I s(X, I) -> exists I (in(I) and s(X, I))).
|
||||
# Elements may not be covered by two input sets
|
||||
assert: forall I, J (exists X (s(X, I) and s(X, J)) and in(I) and in(J) -> I = J).
|
||||
spec: forall I, J (exists X (s(X, I) and s(X, J)) and in(I) and in(J) -> I = J).
|
||||
|
@@ -13,7 +13,7 @@ lemma(backward): forall N (composite(N) -> (exists N10 (1 <= N and N <= n and 2
|
||||
|
||||
lemma: forall X1 (composite(X1) <-> (exists N1, N10 (X1 = N1 and 1 <= N1 and N1 <= n and 2 <= N10 and N10 <= N1 - 1 and exists N11 (N1 = (N10 * N11) and 0 < N11)))).
|
||||
|
||||
assert: forall X (composite(X) -> p__is_integer__(X)).
|
||||
assert: forall N (composite(N) <-> N > 1 and N <= n and exists I, J (I > 1 and J > 1 and I * J = N)).
|
||||
assert: forall X (prime(X) -> p__is_integer__(X)).
|
||||
assert: forall N (prime(N) <-> N > 1 and N <= n and not exists I, J (I > 1 and J > 1 and I * J = N)).
|
||||
#spec: forall X (composite(X) -> p__is_integer__(X)).
|
||||
#spec: forall N (composite(N) <-> N > 1 and N <= n and exists I, J (I > 1 and J > 1 and I * J = N)).
|
||||
spec: forall X (prime(X) -> p__is_integer__(X)).
|
||||
spec: forall N (prime(N) <-> N > 1 and N <= n and not exists I, J (I > 1 and J > 1 and I * J = N)).
|
||||
|
Reference in New Issue
Block a user