E krhyper a hyper tableau theorem prover with equality
Download
1 / 11

E-KRHyper A Hyper Tableau Theorem Prover with Equality - PowerPoint PPT Presentation


  • 84 Views
  • Uploaded on

E-KRHyper A Hyper Tableau Theorem Prover with Equality. Björn Pelzer [email protected] Overview and Motivation. KRHyper theorem prover. E-KRHyper theorem prover. add equality. hyper tableau calculus. E-hyper tableau calculus. reasoning. KRHyper:

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' E-KRHyper A Hyper Tableau Theorem Prover with Equality' - manchu


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
E krhyper a hyper tableau theorem prover with equality

E-KRHyperA Hyper Tableau Theorem Prover with Equality

Björn Pelzer

[email protected]

E-KRHyper


Overview and motivation
Overview and Motivation

KRHyper

theorem prover

E-KRHyper

theorem prover

add equality

hyper tableau calculus

E-hyper tableau calculus

reasoning

KRHyper:

  • theorem prover for first-order logic

  • implements hyper tableau calculus

  • designed for embedding in knowledge-representation applications

  • is used in: e-learning, document management, database schema processing, ontology reasoning,...

  • limitation for use with modal and description logics: no equality reasoning

E-KRHyper


Hyper tableau calculus overview
Hyper Tableau Calculus - Overview

  • theorem proving and model generation method for FOL clauses

  • based on clausal normal form tableaux

  • Technique:

  • Given a set of clauses,

  • constructs a literal tree,

  • uses a single rule for attaching nodes: hyper extension.

E-KRHyper


Hyper tableau calculus hyper extension
Hyper Tableau Calculus - Hyper Extension

p(b, f(a))

p(b, f(a))

p(x, y)  q(f(x), z)  p(z, f(a))  r(g(a))

p(z, f(a))

r(g(a))

 = {z b}

q(a, x)

r(g(x))

r(g(x))

 = {x a}

p(a, y)  q(f(a), b)  p(b, f(a))  r(g(a))

r(g(a))

q(f(a), b)

p(a, y)

p(b, f(a))

  • Given some branch in a tableau:

  • select a clause whose negative literals unify with branch literals:

p(x, y)  q(f(x), b)  p(b, f(a))  r(g(a))

  • if positive literals from the clause share variables, apply some ground substitution

  • attach the substituted literals as new nodes

  • branches with negative leaves are closed and cannot be extended any further

E-KRHyper


E hyper tableau calculus overview
E-Hyper Tableau Calculus - Overview

  • joint work with Peter Baumgartner and Ulrich Furbach

  • combines hyper tableaux with superposition-based handling of equality

  • sound and complete

  • Differences to hyper tableaux:

    • clause tree instead of literal tree

    • four extension rules instead of one

    • adds term ordering

    • adds redundancy handling

E-KRHyper


E hyper tableau calculus superposition
E-Hyper Tableau Calculus - Superposition

f(x)x 

q(f(x), b) p(f(a))

f(x)

f(x)x 

r(g(b)) p(b)

q(f(x), b) p(f(a))

f(a)

q(f(x), b) p(a)

q(f(x), b) p(a)

The superposition rules derive a new node by applying a positive equation unit to another clause from the same branch.

E-KRHyper


E hyper tableau calculus reflexivity and split
E-Hyper Tableau Calculus - Reflexivity and Split

p(f(x, y)) q(y)  g(b)g(x)

p(f(x, y)) q(y)  g(b)g(x)

p(f(b, y)) q(y) 

The split-rule uses a positive disjunction to split the branch.

p(f(b, a))

q(a) 

p(f(b, y)) q(y) 

 = {y a}

p(f(b, a))

q(a) 

The reflexivity-rule eliminates a trivial negative equation.

p(f(b, y)) q(y) 

E-KRHyper


E hyper tableau calculus handling redundancy
E-Hyper Tableau Calculus - Handling Redundancy

f(x)x 

q(f(a), b) 

q(f(a), b) 

f(x)x 

q(f(a), b) 

r(g(b)) p(b)

q(a, b) 

q(a, b) 

  • If a clause...

  • is subsumed, or

  • follows from smaller clauses,

  • then it can be removed.

tt 

q(f(a), b) 

E-KRHyper


E krhyper overview
E-KRHyper - Overview

  • E-hyper tableau is built depth-first, one branch at a time

  • splitting delayed as long as possible

  • iterative deepening bounded by term weight

  • enumerates models

  • backward compatible to KRHyper

E-KRHyper


E krhyper specialities
E-KRHyper - Specialities

(1) f(a)a 

(2) g(a)a 

(3) f(g(x))g(f(x))

(4) p(f(x))  p(g(x))

  • satisfiable

  • yet can cause termination problems for some provers:

  • p(g(f(x)))  p(g(g(x)))

  • p(g(g(f(x))))  p(g(g(g(x))))

  • ...

  • E-KRHyper:

  • purification creates ground instances

  • (1) and (2) allow detection of redundancy

  • terminates with model p(a)

E-KRHyper


E krhyper experiments and outlook
E-KRHyper - Experiments and Outlook

  • works best so far on problems that are range-restricted and satisfiable (solves 74% of the subset in TPTP)

  • early experiments with blocking transformation for bottom-up model generation

  • for the future: performance optimization

  • Thanks!

E-KRHyper


ad