- initial SEM reasoner working with YAP
- updating http://eulersharp.sourceforge.net/GUIDE
- correcting resolve urn plus adding flag(keywords)
- e:tactic can be derived using N3 rules
[Euler-2008-11-04]
- SEMJ tested for 74 cases and the average speed is now 1.5 times slower than with SWI-Prolog
- correcting an exception with varpred in proof output
- reimplementation of log:conjuction to improve performance
- added euler --quick switch for optimized runtime
- correcting getnumber/2 for typed literals
- tuning http://eulersharp.sourceforge.net/2007/07test/pd_hes_tactic.n3
- introducing e:tactic to support N3 based proof tactics
[Euler-2008-10-21]
- simplify pcl intermediate code
- using tactic/3 for proof tactics
- correcting e:graphDifference builtin
- added euler --quiet switch to give shorter explanation at improved speed
- implementing euler --pass --trules to convert t-rules in e:conditional descriptions
[Euler-2008-10-06]
- SEMJ tested for 79 cases and the average speed is 2.8 times slower than with SWI-Prolog
- added e:sigmoid builtin
- SEMJ based on JLog
[Euler-2008-09-20]
- improving N3 to pcl compilation
- fixed e:biconditional for a given that is inconsistent
- adding e:label builtin to get the blank node label of the subject (this is a level breaker)
- adding "Euler under the hood" and "Prolog Coherent Logic (PCL)" to GUIDE
- fix resolving file: uris
- reviewed bnode labeling
- fix resolving http://localhost/.context+abc uris as if they were data:,abc uris
- correcting euler.Codd.dir()
[Euler-2008-08-31]
- simplify euler --sql and tested with http://www.zentus.com/sqlitejdbc/ using codd JDBC connector
- adding setPrintStream and getPrintStream methods to jTrolog.engine.Prolog to support concurrent reasoning
- order of magnitude reduced SEMJ memory footprint
- correcting the use of variables in proof output
- using JDK regular expression utilities
[Euler-2008-08-15]
- correcting e:graphDifference builtin
- adding r:gives in e:falseModel description
- extending e:falseModel description with e:consistentGives using --think
- adding e:graphIntersection builtin
- adding e:graphDifference builtin
- correcting empty graph output
[Euler-2008-08-04]
- simplify skolem machine tape chaining
- fixing log: builtins to deal with empty graphs
- adding del_step/4 in Skolem machine and correcting bug with varpred in proof output
- elaborated e:falseModel explanation
- new variable verb strategy plus correcting proof for facts provenance
- correcting typed literal conversion
- fix issues with concurrent SEM Codd services
- correction for e:falseModel and introduction of e:possibleModel
[Euler-2008-07-19]
- finding all inconsistencies using e:falseModel {}
- adding e:because to explanation of e:falseModel
- correcting log:semantics and log:implies when subject or object is a variable
- improved memory footprint during SEM proof output
- resolving http://localhost/.context+abc uris as if they were data:,abc uris
- false and "false"^^xsd:boolean are now fine in the conclusion of a rule
- shorten proof output
- correcting e:biconditional builtin and reviewed bnode labeling
- implementing HTTP HEAD method in Codd.java and using text/n3 Content-Type for n3 content
- improved SEM command line java euler.EulerRunner --sem --test [--nope] [--rules|--trules] uris --query|--tquery uri
[Euler-2008-06-22]
- SEM Skolem Euler Machine jTrolog v2.1 based
- adding web/2 SEMLibrary builtin
- correcting issues with blank nodes in rule/query conclusions
- updated jtrolog.jar according to latest changes from Ivar in https://jtrolog.dev.java.net/svn/jtrolog/trunk
- use e:disjunction and see also http://lists.w3.org/Archives/Public/public-cwm-talk/2008AprJun/att-0011/00-part
- drop e:prune builtin
[Euler-2008-06-11]
- SEMJ which is jTrolog based is running http://eulersharp.sourceforge.net/2007/07test/semj_test.ref
- correcting log:semantics for 404 Not Found
- correcting fn:substring-after
[Euler-2008-06-09]
- initial SEMJ which is now jTrolog based (adapted jtrolog.jar included and much thanks to Ivar)
- correcting temporal reasoning primitives
[Euler-2008-05-31]
- updating http://eulersharp.sourceforge.net/GUIDE
- adding Codd application/sparql-query MIME Type
- correcting e:biconditional builtin
- correcting jDateTime for timezone
[Euler-2008-05-25]
- using modified JLog to have double precision arithmetic
- fixing bnode issues for SEMJ and dropping --data switch
- adding e:wwwFormEncode SEMJ builtin
- remove duplicate answers for SEMJ --nope
[Euler-2008-05-21]
- initial SEMJ now JLog based
[Euler-2008-05-15]
- initial SEMJ tuProlog java based SEM reasoner
- model inconsistency as rule with => false
- correcting 9 year old bug in Euler toString()
- correcting proof output for keywords and for 1-arities
- correcting N3 proof output for conjunctions
- correct e:falseModel and correct SEM --nope
[Euler-2008-05-01]
- SEM engine now produces N3 proof output and obsoletes sem_tape.pl
- improve --test-as performance
- new SEM engine with better determinism and speed
- improve e:biconditional performance
- adjust some default mime-types in Codd.java
[Euler-2008-04-21]
- correcting coroutining for builtins
- simplifying e:biconditional
- adding e:counterModel and e:falseModel triples in proof output
[Euler-2008-04-11]
- testing t-rules with SEM using --trules and --tquery
- testing existentials in the head
- adding e:biconditional builtin
- improving N3 proof output with sem_tape.pl
- correcting proof output using @keywords and correcting log:implies builtin
[Euler-2008-03-25]
- extend sem_tape.pl proof tester to return N3 proofs by default
- builtin .SEM and .SEMI codd services
- adding --horn command line swith used in sem.pl to have engine with horn logic only
[Euler-2008-03-19]
- adding optional --data and --rules command line arguments
- adding e:sublist and e:pair builtins and tested with http://www.agfa.com/w3c/euler/einstein.n3
- euler --sem to convert N3 input to sem.pl input and sem_tape.pl to check proof and return N3 answer
- adding sem_tape proof output
- adding builtin e:distinct to remove duplicate list items
- prototype Skolem Euler Machine sem.pl tested with ./sem < test011.in
- correcting e:optional for --prolog-bchain
- always output the e:delta triples for --prolog-bchain
[Euler-2008-03-06]
- correcting implementation of log:equalTo and log:notEqualTo
- avoid catch in e:optional
- adding step/3 in euler.pl to improve euler path detection
[Euler-2008-02-25]
- correcting e:true to model truth-value t(conclusion|premises)
- correcting --sql conversion and e:max and e:min
- implementing e:findall for --prolog-bchain reasoning
- simplifying skeleton/2 predicate
- correcting log:semantics for failure
- adding e:optional builtin to call object formula and to succeed anyway
- assert rdf:Property members using --prolog --think
- correcting query with variable verb in conclusion
- keep e:delta only when flag('e:pe')
[Euler-2008-01-19]
- translate jena message when your_file.n3 or your_file.rdf is not found
- adding N3 parsing support for the <= shorthand
- using N3 shorthands in proof/result output
- correcting renaming of variables for nested log:implies
- correcting proof instrumentation for nested log:implies
- make list:append a deterministic builtin
- remove redundancy in proof output
[Euler-2008-01-06]
- updated http://eulersharp.sourceforge.net/GUIDE
- correcting str:matches and adding e:tokenize for regular expressions
- using e:delta measure in proof output
[Euler-2007-12-22]
- adding 404 Not Found reply in Codd.java
- adding http://eulersharp.sourceforge.net/2007/07test/biP.n3 test cases
- correcting math: builtins for plain literals
- improved euler5s math: builtins to calculate with xsd:dateTime and xsd:duration
- test to select between redundant models
- added GUIDE appendix
- added inconsistency checks plus preliminary explanation
[Euler-2007-12-12]
- full logical belief rules via belief(C|P) = belief(P,C)/belief(P)
- using e:proofID and e:bayesRule in proof output
[Euler-2007-12-06]
- refining skeleton and no multiple choice anymore
- no minimal model requirement anymore
[Euler-2007-12-02]
- adding e:skeleton and correcting for pure belief calculus in euler.pl
- correcting graph source bug for euler lemma case
- adding euler5s --profile option and tuning performance
- adding euler5s exception handling
- using MD5 hashes to abbreviate .context URI's
- correcting .euler --sql service
[Euler-2007-11-20]
- adding euler5 SWI Prolog support
- correcting plain literals with language tag
- correcting math:quotient in euler52
- adding .IPaddress codd service
- correcting list:member and list:append
- improved HTTP request header read with cleanup socket garbage
[Euler-2007-11-07]
- correcting Codd string clipping bug and improved HTTP request header read
- updated http://eulersharp.sourceforge.net/GUIDE
- added .euler51 Codd service and added --test-as euler command line option and updated README
- improving time: builtins and adding e:T0 and e:timeWindow
- adding fn:substring-after and fn:substring-before builtins
[Euler-2007-10-25]
- improving string processing with starts_with/2, ends_with/2, unquote/2 and concat/2
- proof output speed 5 times faster with qname/3
- correcting some list builtins
- correcting .context service and correcting N3 serialization
- why/4 with m3eb to resolve same model with same entropy
[Euler-2007-10-23]
- correcting bnodes for --nope and fixing e:findall in query
- drop belief rule description and only have belief rule results
- why/4 with m3e
- adding N3 support for true and false keywords
- EulerLib memo predicates
- simplifying builtins (remove the assert fact)
- simplifying step/10
[Euler-2007-09-25]
- removing step/3
- correcting --nefq when object of e:true is a variable
- adding positive/1 and using maximum positive belief for variants in why/4
- correcting Codd localhost issue
[Euler-2007-09-14]
- http://eulersharp.sourceforge.net/2006/02swap/etc5a running in pure java
- added --test to java euler.EulerRunner to output test run
- supporting N3 @base
- corrected missing dot in proof output
[Euler-2007-09-09]
- builtin .wget in Codd.java
- slightly improved log:includes speed (up to 30%)
- correcting write_proof/0 and step/3 for incompleteness
- correcting log:semantics for euler52 and euler.yap
- tuprolog workaround for Int.unify and Long.unify
[Euler-2007-09-03]
- initial euler52 backward-forward-backward chainer
- optimized --nobe option
- euler.pl is now embedded in EulerLibrary.java
- initial EulerLibrary.java giving times 3 speed improvement for etc5a test run
- tuprolog workaround for OneWayList transform(List list) stackoverflow and testing uid
[Euler-2007-08-26]
- initial tuprolog euler.pl version
- correcting bug in proof output
[Euler-2007-08-09]
- euler.yap refactoring and 4 to 10 times speed improvement
- adding 2007/07test/m3b test
[Euler-2007-08-04]
- removing e:Variant and adding e:premises
- adding --nobe switch (no belief explanation)
- correcting some --nefq issues
- adding euler3, euler4 and euler5 entailment test cases
- variants have same proof state but *different* belief and now 2007/07test/pt is 100 times faster
[Euler-Antichthonidris-bidentatus 2007-07-08]
- added euler --sql to translate triples into sql
- added codd support for http://host.domain/dbname?SQL=sql services
- using max values for variants (instead of avg or rms values)
- using qname for e:source object
- correcting Codd jdbc
- correcting proof/4 and why/2 and why/1
[Euler-Anoplolepis-nuptialis 2007-06-24]
- extending proof output
- adjusting why/5
- adding some Expires: -1 http reply headers in Codd webizer
- preliminary guide http://eulersharp.sourceforge.net/GUIDE
[Euler-Aneuretus-simon 2007-06-16]
- extra euler path lemma case in step/7 boosting speed several orders of magnitude
- added euler --nefq (no ex falso quodlibet) switch and update euler --help
- asserted triples are translated to rule/2 (using .euler --prolog-bchain)
- refined proof/4
[Euler-Anergates-atratulus 2007-06-10]
- correcting step/7 and proof/4 to get deterministic proof results
- use proof_state/4 to cache proof fragments
- using step/4 for facts
- using goal/2 to simplify things a bit more
- additional description of reasoner results using e:conclusion, e:beliefValue, e:informationValue
[Euler-Adetomyrma-venatrix 2007-05-26]
- introduced why/7 to have desired mathematical properties for e:true
- critical correction of euler path lemma case
- simplified things for facts and builtins
[Euler-Acanthomyops-murphii 2007-05-13]
- svn repository at https://eulersharp.svn.sourceforge.net/svnroot/eulersharp/
- using rule/2 instead of clause/2
- added e:inverseEntropy as 1 - binaryEntropy
[Euler-Acanthomyops-latipes 2007-05-05]
- a bit more N3 for the --prolog-bchain proof output
- keep proof state using proof/5
- query as horn rule
[Euler-1.5.45 2007-04-22]
- reordering and correcting step/5 predicate
- query is to deduce rules
- conclusions with variable verb are a not_yet_implemented when bchain
- added relationships to log-rules
[Euler-1.5.44 2007-04-13]
- now can also do backchain only inferencing (use .euler --prolog-bchain)
- adding e:boolean and e:true predicates
- correction of variable verb representation in proof output
- speedup Parser.java
- adding e:binaryEntropy builtin
[Euler-1.5.43 2007-03-08]
- Codd HTTP reply header always having Content-Type
- added chatty flag for bayesian
- exceeding process.ttl now returns a HTTP error code 500 Internal Server Error
- scoped e:bayesian to have data sources in proof
- improved e:bayesian performance using independency test
- adding e:ruleOfThree builtin
[Euler-1.5.41 2007-02-10]
- fix e:tuple for Yap-5.1.2
- improved e:bayesian performance using sorting and reordering
- adding e:max and e:min builtins
- improved e:bayesian performance using blackboard
[Euler-1.5.40 2007-01-20]
- make sure that every uri has a qname too
- changed toPrologString for numerals
- euler.Codd with --properties file plus fixing the service.* properties
- adding e:sort, e:reverse and e:prune builtins
- process.* properties in codd.properties ending with -- are with piped input
- adding e:length builtin
[Euler-1.5.38 2007-01-02]
- initial euler5 json support
- use mapping.* codd properties in euler1
- added time:year, time:month and time:day builtins
- fixing parsing of { ?X [ rdfs:range ?C ] ?Y } => { ?Y a ?C }.
- e:findall least model
- implement logarithm via math:exponentiation
[Euler-1.5.37 2006-11-30]
- correct e:bayesian result and speed improvement using memoization
[Euler-1.5.36 2006-11-20]
- correct e:bayesian for conditional inferencing
- adding fn:resolve-uri and log:conjunction builtin and correcting log:uri
[Euler-1.5.35 2006-11-09]
- adding list:first, list:rest, list:last, list:in, list:member, list:append and log:uri builtins
- correction in proof output; thanks to Dan Connolly
- add http port number support
- fix problem with tab
- cache log:semantics and correct for nonxexistent resources
- correct e:bayesian for conditional inferencing
[Euler-1.5.34 2006-10-20]
- updated README with "Just running Euler via RESTfull webservice"
- added e:bayesian builtin and using e:depends to describe first order bayesian networks
- added primitive mapping feature in Codd
[Euler-1.5.33 2006-10-17]
- simplified euler5 core engine
- subject of math:sum and math:product can have more than 2 items
- test with e:ScopedProperty
- added math:memberCount builtin
[Euler-1.5.32 2006-09-15]
- support N3 @keywords and default names
- drop e:no and use e:findall with empty answer instead
- occurs check not needed for deduction over rational tree models
- simplified pi-rules.n3 and moved original version to pi-calc.n3
- implementing e:tuple and map functional terms to (fn x1 ... xi)
- using var: in proof output
[Euler-1.5.31 2006-08-19]
- added lldm test case
- improving euler5 core engine
- added pi:Port and pi:Message in pi-rules.n3
[Euler-1.5.30 2006-08-05]
- using call in core engine
- correcting for owl:sameAs
- reshuffle dynamic declarations
- correcting for instrument
[Euler-1.5.28 2006-07-15]
- added more @forSome in proof and check more proofs
- use log:implies instead of ==> and improved lf inferencing
- fix Codd HTTP reply headers
- correcting N3 parser for verb repetition
- correcting e:no and e:findall with done/0 and do/0
- fix bnode in list
[Euler-1.5.27 2006-07-01]
- correcting e:no and e:findall
- no empty result for e:findall
- no proof explanation with -nope running 4 times faster
- testing equality theory
- fixing toProlog
[Euler-1.5.26 2006-06-18]
- correcting bnodes for check.py
- added equality theory to rpo-rules.n3 and 'ignored' it in euler1 as it is builtin there
- corrected e:trace
[Euler-1.5.25 2006-06-11]
- using r:Fact and r:source as suggested by Dan Connolly and test with check.py
- fixing log:semantics
- added e:findall and e:no (again)
[Euler-1.5.24 2006-06-04]
- using swap/reason for proofs
- avoid the HTTP/1.0 504 Gateway Timeout
- using e:scope and log:notIncludes
[Euler-1.5.23 2006-05-28]
- updated N3 <-> yap tranlation
- using proof structure as: feedlist e:rpn3 proofstack
- using kb Scoped Negation As Failure as: feedlist e:no triple
[Euler-1.5.22 2006-05-26]
- added euler5 flag('e:nope') when no proof explanation
- added waitFor() in Process.java to avoid the "# No proof found: timeout"
- direct euler5 fetching from euler1
[Euler-1.5.20 2006-05-20]
- N3 RPN proof style using e:enter, e:imply and e:prove
- backchaining in proof engine
- correcting some builtins and using coroutining
[Euler-1.5.18 2006-05-14]
- added euler1 switch --pterm to produce a prolog term needed for euler5 log:semantics
- added "Exon query" and "Test builtins" test cases to etc5
- corrected euler5 log:semantics
- added euler5 log:includes and log:notIncludes
- added euler5 string builtins
- made bnode label generation thread safe in Codd.java
- added extra destroy() in Process.java to avoid the "Too many open files" bug
[Euler-1.5.16 2006-05-07]
- euler5 variable predicates
- euler5 log:semantics
- euler5 N3 output
[Euler-1.5.14 2006-04-30]
- euler5 adding theorem explanations
- README http://eulersharp.sourceforge.net/2006/02swap/README
[Euler-1.5.12 2006-04-28]
- further testing euler5 which is written in Prolog
[Euler-1.5.10 2006-04-21]
- preliminary euler5 which is written in Prolog