diff --git a/RELEASE b/RELEASE index 2024f1b6e..b5992947d 100644 --- a/RELEASE +++ b/RELEASE @@ -1,5 +1,6 @@ EYE release +[v3.0.1] fixing blogic graffiti when using rdf:first, rdf:rest and rdf:nil (obs from Patrick Hochstenbach) [v3.0.0] core blogic metarules and new list:sort, log:callWithCut and log:callWithOptional built-ins [v2.13.2] simplifying extended unifier for blogic [v2.13.1] work around for issue https://github.com/eyereasoner/eye-js/issues/129 by adding extra newline diff --git a/VERSION b/VERSION index 4a36342fc..cb2b00e4f 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -3.0.0 +3.0.1 diff --git a/eye.pl b/eye.pl index 0530fbe8f..65a9f5d6a 100644 --- a/eye.pl +++ b/eye.pl @@ -20,7 +20,7 @@ :- use_module(library(semweb/turtle)). :- catch(use_module(library(http/http_open)), _, true). -version_info('EYE v3.0.0 josd'). +version_info('EYE v3.0.1 josd'). license_info('MIT License @@ -708,41 +708,49 @@ % assert positive surface assertz(implies(''(_, G), G, '<>')), % blow inference fuse - assertz(implies((''(V, G), + assertz(implies((''(X, G), + getlist(X, V), makevars(G, H, beta(V)), call(H) ), false, '<>')), % resolve positive surface - assertz(implies((''(V, G), + assertz(implies((''(X, G), + getlist(X, V), conj_list(G, L), - select(''([], H), L, K), + select(''(Y, H), L, K), + getlist(Y, []), conj_list(H, D), append(K, D, E), conj_list(F, E) ), ''(V, F), '<>')), % erase at even level - assertz(implies((''(V, G), + assertz(implies((''(X, G), + getlist(X, V), conj_list(G, L), - select(''(W, H), L, K), + select(''(Y, H), L, K), + getlist(Y, W), conj_list(C, K), conj_list(H, M), - select(''(W, C), M, _) + select(''(Y, C), M, _) ), ''(W, C), '<>')), % non-unit resolution - assertz(implies((''(V, G), + assertz(implies((''(X, G), + getlist(X, V), conj_list(G, L), \+member(''(_, _), L), \+member(''(_, _), L), length(L, E), E < 4, - ''(W, F), + ''(Y, F), + getlist(Y, W), conj_list(F, K), length(K, 2), \+ (member(''(_, I), K), atomic(I)), makevars(K, J, beta(W)), - select(''(U, C), J, [P]), + select(''(Z, C), J, [P]), + getlist(Z, U), ( select(''(_, P), L, - ''(U, C), M), + ''(Z, C), M), conj_list(H, M) ; select(C, L, P, M), conj_list(H, M) @@ -753,7 +761,8 @@ ; true )), true, '<>')), % negative surface factoring - assertz(implies((''(V, G), + assertz(implies((''(X, G), + getlist(X, V), conj_list(G, L), list_to_set(L, M), conj_list(H, M), @@ -762,9 +771,11 @@ ; true )), true, '<>')), % negative surface disjunction - assertz(implies((''(V, G), + assertz(implies((''(X, G), + getlist(X, V), conj_list(G, L), - select(''(W, H), L, K), + select(''(Y, H), L, K), + getlist(Y, W), conj_list(H, M), length(M, I), I > 1, @@ -781,7 +792,8 @@ ; true )), true, '<>')), % adjust graffiti - assertz(implies((''(V, G), + assertz(implies((''(X, G), + getlist(X, V), findvars(G, U, beta), findall(M, ( member(M, V), @@ -792,7 +804,8 @@ W \= V ), ''(W, G), '<>')), % forward rule - assertz(implies((''(V, G), + assertz(implies((''(X, G), + getlist(X, V), conj_list(G, L), select(''(_, H), L, K), conj_list(R, K), @@ -800,7 +813,8 @@ makevars(''(P, H), B, beta(V)) ), B, '<>')), % forward rule contrapositive - assertz(implies((''(V, G), + assertz(implies((''(X, G), + getlist(X, V), conj_list(G, L), \+member(''(_, _), L), \+member(''(_, _), L), @@ -812,7 +826,8 @@ makevars(''(P, E), B, beta(V)) ), B, '<>')), % backward rule - assertz(implies((''(V, G), + assertz(implies((''(X, G), + getlist(X, V), conj_list(G, L), select(''(_, H), L, K), conj_list(R, K), @@ -825,7 +840,8 @@ ; true )), true, '<>')), % query surface - assertz(implies((''(V, G), + assertz(implies((''(X, G), + getlist(X, V), conj_list(G, L), ( select(''(_, H), L, K) -> conj_list(I, K) diff --git a/eye.zip b/eye.zip index 168926b96..48e6b4c0e 100644 Binary files a/eye.zip and b/eye.zip differ diff --git a/reasoning/allen/answer.n3 b/reasoning/allen/answer.n3 index 8593cbc7b..476d7a59b 100644 --- a/reasoning/allen/answer.n3 +++ b/reasoning/allen/answer.n3 @@ -1,6 +1,3 @@ -#Processed by EYE v3.0.0 josd -#eye --nope token.n3 logic.n3 population.n3 allen.n3 eventTime_rules.n3 --query query.n3 --output answer.n3 - @prefix rdf: . @prefix rdfs: . @prefix xsd: . @@ -42,6 +39,3 @@ (token:interval1 token:interval2) logic:strongest (allen:equals). (token:interval2 token:interval1) logic:strongest (allen:equals). -#2023-02-22T11:25:54.772Z in=346 out=24 ent=244 step=995 brake=6 inf=1082541 sec=0.136 inf/sec=7959860 -#ENDS -