Search for More Declarativity Backward Reasoning for Rule Languages - - PowerPoint PPT Presentation

search for more declarativity
SMART_READER_LITE
LIVE PREVIEW

Search for More Declarativity Backward Reasoning for Rule Languages - - PowerPoint PPT Presentation

Motivation D&B-search Search & Partial Ordering Conclusion Search for More Declarativity Backward Reasoning for Rule Languages Reconsidered Simon Brodt Franois Bry Norbert Eisinger Institute for Informatics, University of Munich,


slide-1
SLIDE 1

Motivation D&B-search Search & Partial Ordering Conclusion

Search for More Declarativity

Backward Reasoning for Rule Languages Reconsidered Simon Brodt François Bry Norbert Eisinger

Institute for Informatics, University of Munich, Oettingenstraße 67, D-80538 München, Germany http://www.pms.ifi.lmu.de/

25 October 2009

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 1/34

slide-2
SLIDE 2

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Declarativity

Declarativity – The Greatest Advantage of Rule Languages Separates between

What is the problem? How is the problem solved?

Built-in problem-solving ⇒ Allows to concentrate on problem-specification Add and modify rules easily Supports rapid prototyping and stepwise refinement Finding solutions where no explicit algorithm is known Adaption to frequently changing prerequisites

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 2/34

slide-3
SLIDE 3

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Declarativity

Declarativity – The Greatest Advantage of Rule Languages Separates between

What is the problem? How is the problem solved?

Built-in problem-solving ⇒ Allows to concentrate on problem-specification Add and modify rules easily Supports rapid prototyping and stepwise refinement Finding solutions where no explicit algorithm is known Adaption to frequently changing prerequisites

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 2/34

slide-4
SLIDE 4

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Declarativity

Declarativity – The Greatest Advantage of Rule Languages Separates between

What is the problem? How is the problem solved?

Built-in problem-solving ⇒ Allows to concentrate on problem-specification Add and modify rules easily Supports rapid prototyping and stepwise refinement Finding solutions where no explicit algorithm is known Adaption to frequently changing prerequisites

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 2/34

slide-5
SLIDE 5

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Declarativity

Declarativity – The Greatest Advantage of Rule Languages Separates between

What is the problem? How is the problem solved?

Built-in problem-solving ⇒ Allows to concentrate on problem-specification Add and modify rules easily Supports rapid prototyping and stepwise refinement Finding solutions where no explicit algorithm is known Adaption to frequently changing prerequisites

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 2/34

slide-6
SLIDE 6

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Declarativity

Declarativity – The Greatest Advantage of Rule Languages Separates between

What is the problem? How is the problem solved?

Built-in problem-solving ⇒ Allows to concentrate on problem-specification Add and modify rules easily Supports rapid prototyping and stepwise refinement Finding solutions where no explicit algorithm is known Adaption to frequently changing prerequisites

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 2/34

slide-7
SLIDE 7

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Declarativity

Declarativity – The Greatest Advantage of Rule Languages Separates between

What is the problem? How is the problem solved?

Built-in problem-solving ⇒ Allows to concentrate on problem-specification Add and modify rules easily Supports rapid prototyping and stepwise refinement Finding solutions where no explicit algorithm is known Adaption to frequently changing prerequisites

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 2/34

slide-8
SLIDE 8

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Declarativity

Declarativity – The Greatest Advantage of Rule Languages Separates between

What is the problem? How is the problem solved?

Built-in problem-solving ⇒ Allows to concentrate on problem-specification Add and modify rules easily Supports rapid prototyping and stepwise refinement Finding solutions where no explicit algorithm is known Adaption to frequently changing prerequisites

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 2/34

slide-9
SLIDE 9

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Declarativity

Declarativity – The Greatest Advantage of Rule Languages Separates between

What is the problem? How is the problem solved?

Built-in problem-solving ⇒ Allows to concentrate on problem-specification Add and modify rules easily Supports rapid prototyping and stepwise refinement Finding solutions where no explicit algorithm is known Adaption to frequently changing prerequisites

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 2/34

slide-10
SLIDE 10

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Search

An inference engine depends on a logical system with reasonable soundness & completeness properties a search method which

preserves (most of) these properties provides an adequate degree of efficiency

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 3/34

slide-11
SLIDE 11

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Search

An inference engine depends on a logical system with reasonable soundness & completeness properties a search method which

preserves (most of) these properties provides an adequate degree of efficiency

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 3/34

slide-12
SLIDE 12

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Search

Necessary Design Decisions tuple-oriented vs. set-oriented forward vs. backward reasoning . . . No Special Assumptions for this Paper Complete and space-efficient search method for rule-engines Particularly applicable to

Backward reasoning with and without memorization Forward reasoning approaches with some goal guidance

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 4/34

slide-13
SLIDE 13

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Search

Necessary Design Decisions tuple-oriented vs. set-oriented forward vs. backward reasoning . . . No Special Assumptions for this Paper Complete and space-efficient search method for rule-engines Particularly applicable to

Backward reasoning with and without memorization Forward reasoning approaches with some goal guidance

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 4/34

slide-14
SLIDE 14

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Search

Necessary Design Decisions tuple-oriented vs. set-oriented forward vs. backward reasoning . . . No Special Assumptions for this Paper Complete and space-efficient search method for rule-engines Particularly applicable to

Backward reasoning with and without memorization Forward reasoning approaches with some goal guidance

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 4/34

slide-15
SLIDE 15

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Rule Languages & Search

Necessary Design Decisions tuple-oriented vs. set-oriented forward vs. backward reasoning . . . No Special Assumptions for this Paper Complete and space-efficient search method for rule-engines Particularly applicable to

Backward reasoning with and without memorization Forward reasoning approaches with some goal guidance

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 4/34

slide-16
SLIDE 16

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Not Much Choice

Depth-First-Search (D-search) Breadth-First-Search (B-search) Iterative Deepening Iterative Broadening

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 5/34

slide-17
SLIDE 17

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Not Much Choice

Depth-First-Search (D-search) Breadth-First-Search (B-search) Iterative Deepening Iterative Broadening

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 5/34

slide-18
SLIDE 18

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Not Much Choice

Depth-First-Search (D-search) Breadth-First-Search (B-search) Iterative Deepening Iterative Broadening

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 5/34

slide-19
SLIDE 19

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Not Much Choice

Depth-First-Search (D-search) Breadth-First-Search (B-search) Iterative Deepening Iterative Broadening

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 5/34

slide-20
SLIDE 20

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Not Much Choice

Depth-First-Search (D-search) Breadth-First-Search (B-search) Iterative Deepening Iterative Broadening

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 5/34

slide-21
SLIDE 21

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Not Much Choice

Depth-First-Search (D-search) Breadth-First-Search (B-search) Iterative Deepening Iterative Broadening Only uninformed search methods can be used

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 5/34

slide-22
SLIDE 22

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Not Much Choice

Depth-First-Search (D-search) Breadth-First-Search (B-search) Iterative Deepening Iterative Broadening Only uninformed search methods can be used

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 5/34

slide-23
SLIDE 23

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Desiderata for Search Methods

Completeness on finite and infinite search trees. Every node in the search space is visited after a finite number of steps. Polynomial space complexity O(dc) c = constant d = maximum depth reached so far (or of the entire tree, if it is finite) Linear time complexity O(n) n = number of nodes visited at least once (or of the entire tree, if it is finite)

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 6/34

slide-24
SLIDE 24

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Desiderata for Search Methods

Completeness on finite and infinite search trees. Every node in the search space is visited after a finite number of steps. Polynomial space complexity O(dc) c = constant d = maximum depth reached so far (or of the entire tree, if it is finite) Linear time complexity O(n) n = number of nodes visited at least once (or of the entire tree, if it is finite)

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 6/34

slide-25
SLIDE 25

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Desiderata for Search Methods

Completeness on finite and infinite search trees. Every node in the search space is visited after a finite number of steps. Polynomial space complexity O(dc) c = constant d = maximum depth reached so far (or of the entire tree, if it is finite) Linear time complexity O(n) n = number of nodes visited at least once (or of the entire tree, if it is finite)

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 6/34

slide-26
SLIDE 26

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Traditional Methods Fail

D-search Incomplete on infinite trees B-search Exponential space-complexity in the depth of the tree Iterative Deepening Frequent re-evaluation Iterative Broadening Incomplete on infinite trees Frequent re-evaluation

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 7/34

slide-27
SLIDE 27

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Traditional Methods Fail

D-search Incomplete on infinite trees B-search Exponential space-complexity in the depth of the tree Iterative Deepening Frequent re-evaluation Iterative Broadening Incomplete on infinite trees Frequent re-evaluation

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 7/34

slide-28
SLIDE 28

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Traditional Methods Fail

D-search Incomplete on infinite trees B-search Exponential space-complexity in the depth of the tree Iterative Deepening Frequent re-evaluation Iterative Broadening Incomplete on infinite trees Frequent re-evaluation

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 7/34

slide-29
SLIDE 29

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Traditional Methods Fail

D-search Incomplete on infinite trees B-search Exponential space-complexity in the depth of the tree Iterative Deepening Frequent re-evaluation Iterative Broadening Incomplete on infinite trees Frequent re-evaluation

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 7/34

slide-30
SLIDE 30

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Sensible Compromise? (Prolog) Use D-search Give rule authors some control to avoid infinite dead ends (e.g. ordering of the rules, . . . ) Declarativity gets lost

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 8/34

slide-31
SLIDE 31

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Sensible Compromise? (Prolog) Use D-search Give rule authors some control to avoid infinite dead ends (e.g. ordering of the rules, . . . ) Declarativity gets lost

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 8/34

slide-32
SLIDE 32

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Search & Declarativity

Term Representation for Natural Numbers

zero represents 0 succ(X,Y) can provide the predecessor X to any Y

representing a nonzero natural number Program

nat(zero) ← nat(Y) ← succ(X,Y) ∧ nat(X) nat2(X,Y) ← nat(X) ∧ nat(Y) less(X,Y) ← "reasonably defined"

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 9/34

slide-33
SLIDE 33

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Problem 1 – Incomplete Enumerations

Program

nat(zero) ← nat(Y) ← succ(X,Y) ∧ nat(X) nat2(X,Y) ← nat(X) ∧ nat(Y) less(X,Y) ← "reasonably defined"

Queries

1

← nat(X)

2

← nat2(X,Y)

Expected Results

1 Enumeration of ◆ 2 Enumeration of ◆ × ◆

Prolog’s Results

1 Enumeration of ◆ 2 Enumeration of {0} × ◆ Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 10/34

slide-34
SLIDE 34

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Problem 1 – Incomplete Enumerations

Program

nat(zero) ← nat(Y) ← succ(X,Y) ∧ nat(X) nat2(X,Y) ← nat(X) ∧ nat(Y) less(X,Y) ← "reasonably defined"

Queries

1

← nat(X)

2

← nat2(X,Y)

Expected Results

1 Enumeration of ◆ 2 Enumeration of ◆ × ◆

Prolog’s Results

1 Enumeration of ◆ 2 Enumeration of {0} × ◆ Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 10/34

slide-35
SLIDE 35

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Problem 1 – Incomplete Enumerations

Program

nat(zero) ← nat(Y) ← succ(X,Y) ∧ nat(X) nat2(X,Y) ← nat(X) ∧ nat(Y) less(X,Y) ← "reasonably defined"

Queries

1

← nat(X)

2

← nat2(X,Y)

Expected Results

1 Enumeration of ◆ 2 Enumeration of ◆ × ◆

Prolog’s Results

1 Enumeration of ◆ 2 Enumeration of {0} × ◆ Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 10/34

slide-36
SLIDE 36

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Problem 2 – Non-Commutativity

Program

nat(zero) ← nat(Y) ← succ(X,Y) ∧ nat(X) nat2(X,Y) ← nat(X) ∧ nat(Y) less(X,Y) ← "reasonably defined"

Queries (Assume Single-Answer-Mode)

1

← less(zero ,X) ∧ nat2(X,Y)

2

← nat2(X,Y) ∧ less(zero ,X)

Expected Results

1 Yes 2 Yes

Prolog’s Results

1 Yes 2 No answer (does not terminate) Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 11/34

slide-37
SLIDE 37

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Problem 2 – Non-Commutativity

Program

nat(zero) ← nat(Y) ← succ(X,Y) ∧ nat(X) nat2(X,Y) ← nat(X) ∧ nat(Y) less(X,Y) ← "reasonably defined"

Queries (Assume Single-Answer-Mode)

1

← less(zero ,X) ∧ nat2(X,Y)

2

← nat2(X,Y) ∧ less(zero ,X)

Expected Results

1 Yes 2 Yes

Prolog’s Results

1 Yes 2 No answer (does not terminate) Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 11/34

slide-38
SLIDE 38

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Problem 2 – Non-Commutativity

Program

nat(zero) ← nat(Y) ← succ(X,Y) ∧ nat(X) nat2(X,Y) ← nat(X) ∧ nat(Y) less(X,Y) ← "reasonably defined"

Queries (Assume Single-Answer-Mode)

1

← less(zero ,X) ∧ nat2(X,Y)

2

← nat2(X,Y) ∧ less(zero ,X)

Expected Results

1 Yes 2 Yes

Prolog’s Results

1 Yes 2 No answer (does not terminate) Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 11/34

slide-39
SLIDE 39

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Reason – Incomplete Search

SLD-resolution is fine Perfectly sound and complete with any literal selection function. Problem: Incompleteness of D-search The problems would not arise with a complete search method Choose iterative deepening?

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 12/34

slide-40
SLIDE 40

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Reason – Incomplete Search

SLD-resolution is fine Perfectly sound and complete with any literal selection function. Problem: Incompleteness of D-search The problems would not arise with a complete search method Choose iterative deepening?

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 12/34

slide-41
SLIDE 41

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Reason – Incomplete Search

SLD-resolution is fine Perfectly sound and complete with any literal selection function. Problem: Incompleteness of D-search The problems would not arise with a complete search method Choose iterative deepening?

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 12/34

slide-42
SLIDE 42

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Problem 3 – Inefficiency on Functional Rule Sets

Program

even(zero) ← even(Y) ← succ(X,Y) ∧ odd(X)

  • dd(Y)

← succ(X,Y) ∧ even(X)

Query

← constant(X) ∧ even(X) constant(X) binds X to some fixed, large number n ∈ ◆.

Expected Runtime linear, O(n) Runtime with Iterative-Deepening quadratic, O(n2) Search should not slow down the evaluation of functional rules

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 13/34

slide-43
SLIDE 43

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Problem 3 – Inefficiency on Functional Rule Sets

Program

even(zero) ← even(Y) ← succ(X,Y) ∧ odd(X)

  • dd(Y)

← succ(X,Y) ∧ even(X)

Query

← constant(X) ∧ even(X) constant(X) binds X to some fixed, large number n ∈ ◆.

Expected Runtime linear, O(n) Runtime with Iterative-Deepening quadratic, O(n2) Search should not slow down the evaluation of functional rules

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 13/34

slide-44
SLIDE 44

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Problem 3 – Inefficiency on Functional Rule Sets

Program

even(zero) ← even(Y) ← succ(X,Y) ∧ odd(X)

  • dd(Y)

← succ(X,Y) ∧ even(X)

Query

← constant(X) ∧ even(X) constant(X) binds X to some fixed, large number n ∈ ◆.

Expected Runtime linear, O(n) Runtime with Iterative-Deepening quadratic, O(n2) Search should not slow down the evaluation of functional rules

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 13/34

slide-45
SLIDE 45

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Problem 3 – Inefficiency on Functional Rule Sets

Program

even(zero) ← even(Y) ← succ(X,Y) ∧ odd(X)

  • dd(Y)

← succ(X,Y) ∧ even(X)

Query

← constant(X) ∧ even(X) constant(X) binds X to some fixed, large number n ∈ ◆.

Expected Runtime linear, O(n) Runtime with Iterative-Deepening quadratic, O(n2) Search should not slow down the evaluation of functional rules

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 13/34

slide-46
SLIDE 46

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

A New Algorithm – D&B-search

Integrates D-search and B-search Complete on finite and infinite trees Linear space complexity in depth for basic algorithm Non-repetitive Family of algorithms in parameter c with

Complete for c > 0 Polynomial space-requirement O(dc) in depth for c < ∞ D-search and B-search as extreme cases

Only simple datastructures needed Properties are proved

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 14/34

slide-47
SLIDE 47

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

A New Algorithm – D&B-search

Integrates D-search and B-search Complete on finite and infinite trees Linear space complexity in depth for basic algorithm Non-repetitive Family of algorithms in parameter c with

Complete for c > 0 Polynomial space-requirement O(dc) in depth for c < ∞ D-search and B-search as extreme cases

Only simple datastructures needed Properties are proved

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 14/34

slide-48
SLIDE 48

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

A New Algorithm – D&B-search

Integrates D-search and B-search Complete on finite and infinite trees Linear space complexity in depth for basic algorithm Non-repetitive Family of algorithms in parameter c with

Complete for c > 0 Polynomial space-requirement O(dc) in depth for c < ∞ D-search and B-search as extreme cases

Only simple datastructures needed Properties are proved

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 14/34

slide-49
SLIDE 49

Motivation D&B-search Search & Partial Ordering Conclusion Rule Languages & Declarativity Rule Languages & Search Desiderata for Search Methods Search & Declarativity

Overview

1

D&B-search

2

Search & Partial Ordering

3

Conclusion

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 15/34

slide-50
SLIDE 50

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search

1

D&B-search The Basic Algorithm The D&B-Family

2

Search & Partial Ordering

3

Conclusion

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 16/34

slide-51
SLIDE 51

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-52
SLIDE 52

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-53
SLIDE 53

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-54
SLIDE 54

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-55
SLIDE 55

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-56
SLIDE 56

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-57
SLIDE 57

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-58
SLIDE 58

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2 Generally D-search passes depth bound fi+1 only if level i has been completed B-search completes level i only if depth bound fi has been passed

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-59
SLIDE 59

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2 Generally D-search passes depth bound fi+1 only if level i has been completed B-search completes level i only if depth bound fi has been passed

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-60
SLIDE 60

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2 Generally D-search passes depth bound fi+1 only if level i has been completed B-search completes level i only if depth bound fi has been passed

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-61
SLIDE 61

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2 Observations D-search advances exponentially faster than B-search The number of nodes to be stored is only polynomial in the maximum depth (if fi is exponential in i)

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-62
SLIDE 62

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2 Observations D-search advances exponentially faster than B-search The number of nodes to be stored is only polynomial in the maximum depth (if fi is exponential in i)

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-63
SLIDE 63

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

1 2 3 4 5 6 7 8 f0 f1 f2

D-search starts D-search passes depth bound f0 B-search completes level 0 (no work to do) D-search passes depth bound f1 B-search completes level 1 D-search passes depth bound f2 B-search completes level 2 Observations D-search advances exponentially faster than B-search The number of nodes to be stored is only polynomial in the maximum depth (if fi is exponential in i)

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 17/34

slide-64
SLIDE 64

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Idea

Alternate D-search with B-search Rotation is controlled by a sequence f0, f1, f2, . . . of depth bounds

Defined by a function ◆ → ◆, i → fi i < fi < fi+1

fi = 2i for the examples

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 18/34

slide-65
SLIDE 65

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Pivot-Nodes and Pivot-Sets

1 2 3 4 5 6 7 8 f0 f1 f2

A node is “earlier” than another if (unrestricted) D-search would expand it first Pivot-node si : earliest node at depth fi Pre-pivot-set S0 : nodes earlier than s0 Di : nodes earlier than si+1 Bi : nodes at depth i Inter-pivot-set Si+1 = (Di ∪ Bi) \Xi is expanded in-between si and si+1 Xi = S0 ∪ s0 ∪ . . . ∪ Si ∪ si Post-pivot-set R : the rest of the nodes

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 19/34

slide-66
SLIDE 66

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Pivot-Nodes and Pivot-Sets

1 2 3 4 5 6 7 8 f0 f1 f2 s0 s1 s2

A node is “earlier” than another if (unrestricted) D-search would expand it first Pivot-node si : earliest node at depth fi Pre-pivot-set S0 : nodes earlier than s0 Di : nodes earlier than si+1 Bi : nodes at depth i Inter-pivot-set Si+1 = (Di ∪ Bi) \Xi is expanded in-between si and si+1 Xi = S0 ∪ s0 ∪ . . . ∪ Si ∪ si Post-pivot-set R : the rest of the nodes

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 19/34

slide-67
SLIDE 67

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Pivot-Nodes and Pivot-Sets

1 2 3 4 5 6 7 8 f0 f1 f2 s0 s1 s2 S0

A node is “earlier” than another if (unrestricted) D-search would expand it first Pivot-node si : earliest node at depth fi Pre-pivot-set S0 : nodes earlier than s0 Di : nodes earlier than si+1 Bi : nodes at depth i Inter-pivot-set Si+1 = (Di ∪ Bi) \Xi is expanded in-between si and si+1 Xi = S0 ∪ s0 ∪ . . . ∪ Si ∪ si Post-pivot-set R : the rest of the nodes

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 19/34

slide-68
SLIDE 68

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Pivot-Nodes and Pivot-Sets

1 2 3 4 5 6 7 8 s0 s1 s2 f0 f1 f2 D1

A node is “earlier” than another if (unrestricted) D-search would expand it first Pivot-node si : earliest node at depth fi Pre-pivot-set S0 : nodes earlier than s0 Di : nodes earlier than si+1 Bi : nodes at depth i Inter-pivot-set Si+1 = (Di ∪ Bi) \Xi is expanded in-between si and si+1 Xi = S0 ∪ s0 ∪ . . . ∪ Si ∪ si Post-pivot-set R : the rest of the nodes

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 19/34

slide-69
SLIDE 69

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Pivot-Nodes and Pivot-Sets

1 2 3 4 5 6 7 8 f0 f1 f2 s0 s1 s2 B1

A node is “earlier” than another if (unrestricted) D-search would expand it first Pivot-node si : earliest node at depth fi Pre-pivot-set S0 : nodes earlier than s0 Di : nodes earlier than si+1 Bi : nodes at depth i Inter-pivot-set Si+1 = (Di ∪ Bi) \Xi is expanded in-between si and si+1 Xi = S0 ∪ s0 ∪ . . . ∪ Si ∪ si Post-pivot-set R : the rest of the nodes

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 19/34

slide-70
SLIDE 70

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Pivot-Nodes and Pivot-Sets

1 2 3 4 5 6 7 8 s2 f0 f1 f2 S2 X1

A node is “earlier” than another if (unrestricted) D-search would expand it first Pivot-node si : earliest node at depth fi Pre-pivot-set S0 : nodes earlier than s0 Di : nodes earlier than si+1 Bi : nodes at depth i Inter-pivot-set Si+1 = (Di ∪ Bi) \Xi is expanded in-between si and si+1 Xi = S0 ∪ s0 ∪ . . . ∪ Si ∪ si Post-pivot-set R : the rest of the nodes

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 19/34

slide-71
SLIDE 71

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Pivot-Nodes and Pivot-Sets

1 2 3 4 5 6 7 8 f0 f1 f2 s2 R

A node is “earlier” than another if (unrestricted) D-search would expand it first Pivot-node si : earliest node at depth fi Pre-pivot-set S0 : nodes earlier than s0 Di : nodes earlier than si+1 Bi : nodes at depth i Inter-pivot-set Si+1 = (Di ∪ Bi) \Xi is expanded in-between si and si+1 Xi = S0 ∪ s0 ∪ . . . ∪ Si ∪ si Post-pivot-set R : the rest of the nodes

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 19/34

slide-72
SLIDE 72

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Complete Infinite Tree

1 2 3 4 5 6 7 8 s0 S0

D-search expands all nodes in S0 D-search passes s0 S1 is finished D-search passes s1 B-search expands the rest of B1 S2 is finished D-search passes s2 B-search expands the rest of B2 S3 is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 20/34

slide-73
SLIDE 73

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Complete Infinite Tree

1 2 3 4 5 6 7 8 s0 s1

D-search expands all nodes in S0 D-search passes s0 S1 is finished D-search passes s1 B-search expands the rest of B1 S2 is finished D-search passes s2 B-search expands the rest of B2 S3 is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 20/34

slide-74
SLIDE 74

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Complete Infinite Tree

1 2 3 4 5 6 7 8 s0 s1 {s0} ∪ S1

D-search expands all nodes in S0 D-search passes s0 S1 is finished D-search passes s1 B-search expands the rest of B1 S2 is finished D-search passes s2 B-search expands the rest of B2 S3 is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 20/34

slide-75
SLIDE 75

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Complete Infinite Tree

1 2 3 4 5 6 7 8 s1 s2

D-search expands all nodes in S0 D-search passes s0 S1 is finished D-search passes s1 B-search expands the rest of B1 S2 is finished D-search passes s2 B-search expands the rest of B2 S3 is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 20/34

slide-76
SLIDE 76

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Complete Infinite Tree

1 2 3 4 5 6 7 8 s1 s2 {s1} ∪ S2

D-search expands all nodes in S0 D-search passes s0 S1 is finished D-search passes s1 B-search expands the rest of B1 S2 is finished D-search passes s2 B-search expands the rest of B2 S3 is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 20/34

slide-77
SLIDE 77

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Complete Infinite Tree

1 2 3 4 5 6 7 8 s1 s2 {s1} ∪ S2

D-search expands all nodes in S0 D-search passes s0 S1 is finished D-search passes s1 B-search expands the rest of B1 S2 is finished D-search passes s2 B-search expands the rest of B2 S3 is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 20/34

slide-78
SLIDE 78

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Complete Infinite Tree

1 2 3 4 5 6 7 8 s2 s3

D-search expands all nodes in S0 D-search passes s0 S1 is finished D-search passes s1 B-search expands the rest of B1 S2 is finished D-search passes s2 B-search expands the rest of B2 S3 is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 20/34

slide-79
SLIDE 79

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Complete Infinite Tree

1 2 3 4 5 6 7 8 s2 s3 {s2} ∪ S3

D-search expands all nodes in S0 D-search passes s0 S1 is finished D-search passes s1 B-search expands the rest of B1 S2 is finished D-search passes s2 B-search expands the rest of B2 S3 is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 20/34

slide-80
SLIDE 80

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Complete Infinite Tree

1 2 3 4 5 6 7 8 s2 s3 {s2} ∪ S3

D-search expands all nodes in S0 D-search passes s0 S1 is finished D-search passes s1 B-search expands the rest of B1 S2 is finished D-search passes s2 B-search expands the rest of B2 S3 is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 20/34

slide-81
SLIDE 81

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Complete Infinite Tree

1 2 3 4 5 6 7 8 s2 s3 {s2} ∪ S3

D-search expands all nodes in S0 D-search passes s0 S1 is finished D-search passes s1 B-search expands the rest of B1 S2 is finished D-search passes s2 B-search expands the rest of B2 S3 is finished Observation D&B-search expands the nodes in the order S0, s0, S1, s1, . . . , Si, si, . . . , R

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 20/34

slide-82
SLIDE 82

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Finite Tree

1 2 3 4 5 6 7 8 s2 R

S2 is finished D-search expands s2 D-search reaches the max. depth in R (no s3 in this tree) B-search may complete B2 D-search continues R D-search continues R D-search finishes R Search is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 21/34

slide-83
SLIDE 83

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Finite Tree

1 2 3 4 5 6 7 8 s2 R

S2 is finished D-search expands s2 D-search reaches the max. depth in R (no s3 in this tree) B-search may complete B2 D-search continues R D-search continues R D-search finishes R Search is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 21/34

slide-84
SLIDE 84

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Finite Tree

1 2 3 4 5 6 7 8 s2 R

S2 is finished D-search expands s2 D-search reaches the max. depth in R (no s3 in this tree) B-search may complete B2 D-search continues R D-search continues R D-search finishes R Search is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 21/34

slide-85
SLIDE 85

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Finite Tree

1 2 3 4 5 6 7 8 s2 R

S2 is finished D-search expands s2 D-search reaches the max. depth in R (no s3 in this tree) B-search may complete B2 D-search continues R D-search continues R D-search finishes R Search is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 21/34

slide-86
SLIDE 86

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Finite Tree

1 2 3 4 5 6 7 8 s2 R

S2 is finished D-search expands s2 D-search reaches the max. depth in R (no s3 in this tree) B-search may complete B2 D-search continues R D-search continues R D-search finishes R Search is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 21/34

slide-87
SLIDE 87

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Finite Tree

1 2 3 4 5 6 7 8 s2 R

S2 is finished D-search expands s2 D-search reaches the max. depth in R (no s3 in this tree) B-search may complete B2 D-search continues R D-search continues R D-search finishes R Search is finished

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 21/34

slide-88
SLIDE 88

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Finite Tree

1 2 3 4 5 6 7 8 s2 R

S2 is finished D-search expands s2 D-search reaches the max. depth in R (no s3 in this tree) B-search may complete B2 D-search continues R D-search continues R D-search finishes R Search is finished Observation B-search stops shortly after D-search reaches the max. depth Most of the tree is expanded by D-search

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 21/34

slide-89
SLIDE 89

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Finite Tree

1 2 3 4 5 6 7 8 s2 R

S2 is finished D-search expands s2 D-search reaches the max. depth in R (no s3 in this tree) B-search may complete B2 D-search continues R D-search continues R D-search finishes R Search is finished Observation B-search stops shortly after D-search reaches the max. depth Most of the tree is expanded by D-search

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 21/34

slide-90
SLIDE 90

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Finite Tree

1 2 3 4 5 6 7 8 s2 R

S2 is finished D-search expands s2 D-search reaches the max. depth in R (no s3 in this tree) B-search may complete B2 D-search continues R D-search continues R D-search finishes R Search is finished Observation B-search stops shortly after D-search reaches the max. depth Most of the tree is expanded by D-search

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 21/34

slide-91
SLIDE 91

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Non-Complete Infinite Tree

1 2 3 4 5 6 7 8 s1

S1 is finished D-search passes s1 B-search may complete B1 D-search finishes S2 D-search passes s2 B-search completes B2 S3 is finished D-search passes s3 B-search completes B3

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 22/34

slide-92
SLIDE 92

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Non-Complete Infinite Tree

1 2 3 4 5 6 7 8 s1

S1 is finished D-search passes s1 B-search may complete B1 D-search finishes S2 D-search passes s2 B-search completes B2 S3 is finished D-search passes s3 B-search completes B3

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 22/34

slide-93
SLIDE 93

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Non-Complete Infinite Tree

1 2 3 4 5 6 7 8 s1 s2 {s1} ∪ S2

S1 is finished D-search passes s1 B-search may complete B1 D-search finishes S2 D-search passes s2 B-search completes B2 S3 is finished D-search passes s3 B-search completes B3

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 22/34

slide-94
SLIDE 94

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Non-Complete Infinite Tree

1 2 3 4 5 6 7 8 s2 s3

S1 is finished D-search passes s1 B-search may complete B1 D-search finishes S2 D-search passes s2 B-search completes B2 S3 is finished D-search passes s3 B-search completes B3

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 22/34

slide-95
SLIDE 95

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Non-Complete Infinite Tree

1 2 3 4 5 6 7 8 s2 s3 {s2} ∪ S3

S1 is finished D-search passes s1 B-search may complete B1 D-search finishes S2 D-search passes s2 B-search completes B2 S3 is finished D-search passes s3 B-search completes B3

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 22/34

slide-96
SLIDE 96

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Non-Complete Infinite Tree

1 2 3 4 5 6 7 8 s3

S1 is finished D-search passes s1 B-search may complete B1 D-search finishes S2 D-search passes s2 B-search completes B2 S3 is finished D-search passes s3 B-search completes B3

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 22/34

slide-97
SLIDE 97

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Non-Complete Infinite Tree

1 2 3 4 5 6 7 8 s3 {s3} ∪ S3

S1 is finished D-search passes s1 B-search may complete B1 D-search finishes S2 D-search passes s2 B-search completes B2 S3 is finished D-search passes s3 B-search completes B3

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 22/34

slide-98
SLIDE 98

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Non-Complete Infinite Tree

1 2 3 4 5 6 7 8 s3 {s3} ∪ S3

S1 is finished D-search passes s1 B-search may complete B1 D-search finishes S2 D-search passes s2 B-search completes B2 S3 is finished D-search passes s3 B-search completes B3 Observation D-search “vanishes” in the earliest infinite branch Most of the tree is expanded by B-search

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 22/34

slide-99
SLIDE 99

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Non-Complete Infinite Tree

1 2 3 4 5 6 7 8 s3 {s3} ∪ S3

S1 is finished D-search passes s1 B-search may complete B1 D-search finishes S2 D-search passes s2 B-search completes B2 S3 is finished D-search passes s3 B-search completes B3 Observation D-search “vanishes” in the earliest infinite branch Most of the tree is expanded by B-search

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 22/34

slide-100
SLIDE 100

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Non-Complete Infinite Tree

1 2 3 4 5 6 7 8 s3 {s3} ∪ S3

S1 is finished D-search passes s1 B-search may complete B1 D-search finishes S2 D-search passes s2 B-search completes B2 S3 is finished D-search passes s3 B-search completes B3 Observation D-search “vanishes” in the earliest infinite branch Most of the tree is expanded by B-search

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 22/34

slide-101
SLIDE 101

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Adaptivity

D&B-Search behaves almost like D-search on finite trees behaves almost like B-search on infinite trees ⇒ has a kind of built-in adaptivity behaves like the “best” uninformed search method for the tree Similar effect when D-search and iterative-deepening are combined

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 23/34

slide-102
SLIDE 102

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Adaptivity

D&B-Search behaves almost like D-search on finite trees behaves almost like B-search on infinite trees ⇒ has a kind of built-in adaptivity behaves like the “best” uninformed search method for the tree Similar effect when D-search and iterative-deepening are combined

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 23/34

slide-103
SLIDE 103

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Adaptivity

D&B-Search behaves almost like D-search on finite trees behaves almost like B-search on infinite trees ⇒ has a kind of built-in adaptivity behaves like the “best” uninformed search method for the tree Similar effect when D-search and iterative-deepening are combined

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 23/34

slide-104
SLIDE 104

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

D&B-search – Adaptivity

D&B-Search behaves almost like D-search on finite trees behaves almost like B-search on infinite trees ⇒ has a kind of built-in adaptivity behaves like the “best” uninformed search method for the tree Similar effect when D-search and iterative-deepening are combined

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 23/34

slide-105
SLIDE 105

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

Assume that the tree’s branching factor is bounded by b ∈ ◆ Parameterise the function fi with c ∈ ◆ ∪ {∞} Idea: fc,i := ⌊b

i c ⌋

To get monotonicity: fc,i := ⌊b

i c ⌋ + i Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 24/34

slide-106
SLIDE 106

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

Assume that the tree’s branching factor is bounded by b ∈ ◆ Parameterise the function fi with c ∈ ◆ ∪ {∞} Idea: fc,i := ⌊b

i c ⌋

To get monotonicity: fc,i := ⌊b

i c ⌋ + i Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 24/34

slide-107
SLIDE 107

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

Assume that the tree’s branching factor is bounded by b ∈ ◆ Parameterise the function fi with c ∈ ◆ ∪ {∞} Idea: fc,i := ⌊b

i c ⌋

To get monotonicity: fc,i := ⌊b

i c ⌋ + i Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 24/34

slide-108
SLIDE 108

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

fc,i := ⌊b

i c ⌋ + i

Properties For 1 ≤ c ≤ ∞ the algorithm is complete (for c = 0 it is not) For 1 ≤ c < ∞ its space complexity is O(dc) For c = 0 it corresponds to D-search because f0,0 = ∞ . The pre-pivot-set S0 contains all nodes of the whole tree. For c = ∞ it corresponds to B-search because f∞,i = i + 1. All sets Di\Xi are empty, thus Si+1 = Bi\{si}

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 25/34

slide-109
SLIDE 109

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

fc,i := ⌊b

i c ⌋ + i

Properties For 1 ≤ c ≤ ∞ the algorithm is complete (for c = 0 it is not) For 1 ≤ c < ∞ its space complexity is O(dc) For c = 0 it corresponds to D-search because f0,0 = ∞ . The pre-pivot-set S0 contains all nodes of the whole tree. For c = ∞ it corresponds to B-search because f∞,i = i + 1. All sets Di\Xi are empty, thus Si+1 = Bi\{si}

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 25/34

slide-110
SLIDE 110

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

fc,i := ⌊b

i c ⌋ + i

Properties For 1 ≤ c ≤ ∞ the algorithm is complete (for c = 0 it is not) For 1 ≤ c < ∞ its space complexity is O(dc) For c = 0 it corresponds to D-search because f0,0 = ∞ . The pre-pivot-set S0 contains all nodes of the whole tree. For c = ∞ it corresponds to B-search because f∞,i = i + 1. All sets Di\Xi are empty, thus Si+1 = Bi\{si}

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 25/34

slide-111
SLIDE 111

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

fc,i := ⌊b

i c ⌋ + i

Properties For 1 ≤ c ≤ ∞ the algorithm is complete (for c = 0 it is not) For 1 ≤ c < ∞ its space complexity is O(dc) For c = 0 it corresponds to D-search because f0,0 = ∞ . The pre-pivot-set S0 contains all nodes of the whole tree. For c = ∞ it corresponds to B-search because f∞,i = i + 1. All sets Di\Xi are empty, thus Si+1 = Bi\{si}

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 25/34

slide-112
SLIDE 112

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

Advantages c expresses how much memory is invested in completeness Almost abitrary gradation between the two extremes D-search (c = 0) and B-search (c = ∞) Space complexity polynomial in depth Time complexity linear in size c can be used as parameter for a single implementation c may be adapted even during the traversal

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 26/34

slide-113
SLIDE 113

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

Advantages c expresses how much memory is invested in completeness Almost abitrary gradation between the two extremes D-search (c = 0) and B-search (c = ∞) Space complexity polynomial in depth Time complexity linear in size c can be used as parameter for a single implementation c may be adapted even during the traversal

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 26/34

slide-114
SLIDE 114

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

Advantages c expresses how much memory is invested in completeness Almost abitrary gradation between the two extremes D-search (c = 0) and B-search (c = ∞) Space complexity polynomial in depth Time complexity linear in size c can be used as parameter for a single implementation c may be adapted even during the traversal

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 26/34

slide-115
SLIDE 115

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

Advantages c expresses how much memory is invested in completeness Almost abitrary gradation between the two extremes D-search (c = 0) and B-search (c = ∞) Space complexity polynomial in depth Time complexity linear in size c can be used as parameter for a single implementation c may be adapted even during the traversal

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 26/34

slide-116
SLIDE 116

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

Advantages c expresses how much memory is invested in completeness Almost abitrary gradation between the two extremes D-search (c = 0) and B-search (c = ∞) Space complexity polynomial in depth Time complexity linear in size c can be used as parameter for a single implementation c may be adapted even during the traversal

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 26/34

slide-117
SLIDE 117

Motivation D&B-search Search & Partial Ordering Conclusion The Basic Algorithm The D&B-Family

The D&B-Family

Advantages c expresses how much memory is invested in completeness Almost abitrary gradation between the two extremes D-search (c = 0) and B-search (c = ∞) Space complexity polynomial in depth Time complexity linear in size c can be used as parameter for a single implementation c may be adapted even during the traversal

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 26/34

slide-118
SLIDE 118

Motivation D&B-search Search & Partial Ordering Conclusion

Search & Partial Ordering

1

D&B-search

2

Search & Partial Ordering

3

Conclusion

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 27/34

slide-119
SLIDE 119

Motivation D&B-search Search & Partial Ordering Conclusion

Search & Partial Ordering

Transforms problems on search algorithms to problems on partial orderings Idea: Nodes ordered by their first occurrence Partial orderings are a well-studied field

precise notation Powerful instruments for proofs (e.g. the arithmetic for ordinal numbers)

Powerful characterization of completeness Finite and infinte trees are covered uniformly

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 28/34

slide-120
SLIDE 120

Motivation D&B-search Search & Partial Ordering Conclusion

Search & Partial Ordering

Transforms problems on search algorithms to problems on partial orderings Idea: Nodes ordered by their first occurrence Partial orderings are a well-studied field

precise notation Powerful instruments for proofs (e.g. the arithmetic for ordinal numbers)

Powerful characterization of completeness Finite and infinte trees are covered uniformly

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 28/34

slide-121
SLIDE 121

Motivation D&B-search Search & Partial Ordering Conclusion

Search & Partial Ordering

Transforms problems on search algorithms to problems on partial orderings Idea: Nodes ordered by their first occurrence Partial orderings are a well-studied field

precise notation Powerful instruments for proofs (e.g. the arithmetic for ordinal numbers)

Powerful characterization of completeness Finite and infinte trees are covered uniformly

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 28/34

slide-122
SLIDE 122

Motivation D&B-search Search & Partial Ordering Conclusion

Search & Partial Ordering

Transforms problems on search algorithms to problems on partial orderings Idea: Nodes ordered by their first occurrence Partial orderings are a well-studied field

precise notation Powerful instruments for proofs (e.g. the arithmetic for ordinal numbers)

Powerful characterization of completeness Finite and infinte trees are covered uniformly

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 28/34

slide-123
SLIDE 123

Motivation D&B-search Search & Partial Ordering Conclusion

Search & Partial Ordering

Transforms problems on search algorithms to problems on partial orderings Idea: Nodes ordered by their first occurrence Partial orderings are a well-studied field

precise notation Powerful instruments for proofs (e.g. the arithmetic for ordinal numbers)

Powerful characterization of completeness Finite and infinte trees are covered uniformly

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 28/34

slide-124
SLIDE 124

Motivation D&B-search Search & Partial Ordering Conclusion

Characterization of Completeness A search algorithm is complete iff for each depth i there is a depth fi+1 > i so that none of the nodes at depth fi+1 is expanded before every node at depth i has been expanded.

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 29/34

slide-125
SLIDE 125

Motivation D&B-search Search & Partial Ordering Conclusion

Characterization of Completeness A search algorithm is complete iff for each depth i there is a depth fi+1 > i so that none of the nodes at depth fi+1 is expanded before every node at depth i has been expanded.

1 2 3 4 5 6 7 8 i

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 29/34

slide-126
SLIDE 126

Motivation D&B-search Search & Partial Ordering Conclusion

Characterization of Completeness A search algorithm is complete iff for each depth i there is a depth fi+1 > i so that none of the nodes at depth fi+1 is expanded before every node at depth i has been expanded.

1 2 3 4 5 6 7 8 i fi+1

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 29/34

slide-127
SLIDE 127

Motivation D&B-search Search & Partial Ordering Conclusion

Characterization of Completeness A search algorithm is complete iff for each depth i there is a depth fi+1 > i so that none of the nodes at depth fi+1 is expanded before every node at depth i has been expanded.

1 2 3 4 5 6 7 8 i fi+1

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 29/34

slide-128
SLIDE 128

Motivation D&B-search Search & Partial Ordering Conclusion

Characterization of Completeness A search algorithm is complete iff for each depth i there is a depth fi+1 > i so that none of the nodes at depth fi+1 is expanded before every node at depth i has been expanded.

1 2 3 4 5 6 7 8 i fi+1

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 29/34

slide-129
SLIDE 129

Motivation D&B-search Search & Partial Ordering Conclusion

Characterization of Completeness A search algorithm is complete iff for each depth i there is a depth fi+1 > i so that none of the nodes at depth fi+1 is expanded before every node at depth i has been expanded.

1 2 3 4 5 6 7 8 i = 1 B1

D&B-search Bi ⊆ Si+1 ∪ Xi Si+1 ∪ Xi is completed before si, the first node at depth fi+1 ⇒ D&B-search is complete

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 29/34

slide-130
SLIDE 130

Motivation D&B-search Search & Partial Ordering Conclusion

Characterization of Completeness A search algorithm is complete iff for each depth i there is a depth fi+1 > i so that none of the nodes at depth fi+1 is expanded before every node at depth i has been expanded.

1 2 3 4 5 6 7 8 i = 1 S2 X1

D&B-search Bi ⊆ Si+1 ∪ Xi Si+1 ∪ Xi is completed before si, the first node at depth fi+1 ⇒ D&B-search is complete

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 29/34

slide-131
SLIDE 131

Motivation D&B-search Search & Partial Ordering Conclusion

Characterization of Completeness A search algorithm is complete iff for each depth i there is a depth fi+1 > i so that none of the nodes at depth fi+1 is expanded before every node at depth i has been expanded.

1 2 3 4 5 6 7 8 s2 i = 1 fi+1 = f2 S2 X1

D&B-search Bi ⊆ Si+1 ∪ Xi Si+1 ∪ Xi is completed before si, the first node at depth fi+1 ⇒ D&B-search is complete

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 29/34

slide-132
SLIDE 132

Motivation D&B-search Search & Partial Ordering Conclusion

Characterization of Completeness A search algorithm is complete iff for each depth i there is a depth fi+1 > i so that none of the nodes at depth fi+1 is expanded before every node at depth i has been expanded.

1 2 3 4 5 6 7 8 s2 i = 1 fi+1 = f2 S2 X1

D&B-search Bi ⊆ Si+1 ∪ Xi Si+1 ∪ Xi is completed before si, the first node at depth fi+1 ⇒ D&B-search is complete

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 29/34

slide-133
SLIDE 133

Motivation D&B-search Search & Partial Ordering Conclusion

Conclusion

1

D&B-search

2

Search & Partial Ordering

3

Conclusion

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 30/34

slide-134
SLIDE 134

Motivation D&B-search Search & Partial Ordering Conclusion

D&B-search

Novel Search method: Integrating D-search and B-search Ratio of D-search and B-search balanced by a parameter Family of algorithms in parameter c

D-search and B-Search as borderline cases Complete in all non-borderline cases Non-repetitive, i.e. time complexity is linear in size Space complexity is polynomial in depth. Polynomial depends on parameter c

Formal proofs of these properties Built-in adaption to the searched tree Better than running D-Search and B-Search in parallel Implementation in form of detailed pseudo-code → only simple datastructures needed

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 31/34

slide-135
SLIDE 135

Motivation D&B-search Search & Partial Ordering Conclusion

D&B-search

Novel Search method: Integrating D-search and B-search Ratio of D-search and B-search balanced by a parameter Family of algorithms in parameter c

D-search and B-Search as borderline cases Complete in all non-borderline cases Non-repetitive, i.e. time complexity is linear in size Space complexity is polynomial in depth. Polynomial depends on parameter c

Formal proofs of these properties Built-in adaption to the searched tree Better than running D-Search and B-Search in parallel Implementation in form of detailed pseudo-code → only simple datastructures needed

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 31/34

slide-136
SLIDE 136

Motivation D&B-search Search & Partial Ordering Conclusion

D&B-search

Novel Search method: Integrating D-search and B-search Ratio of D-search and B-search balanced by a parameter Family of algorithms in parameter c

D-search and B-Search as borderline cases Complete in all non-borderline cases Non-repetitive, i.e. time complexity is linear in size Space complexity is polynomial in depth. Polynomial depends on parameter c

Formal proofs of these properties Built-in adaption to the searched tree Better than running D-Search and B-Search in parallel Implementation in form of detailed pseudo-code → only simple datastructures needed

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 31/34

slide-137
SLIDE 137

Motivation D&B-search Search & Partial Ordering Conclusion

D&B-search

Novel Search method: Integrating D-search and B-search Ratio of D-search and B-search balanced by a parameter Family of algorithms in parameter c

D-search and B-Search as borderline cases Complete in all non-borderline cases Non-repetitive, i.e. time complexity is linear in size Space complexity is polynomial in depth. Polynomial depends on parameter c

Formal proofs of these properties Built-in adaption to the searched tree Better than running D-Search and B-Search in parallel Implementation in form of detailed pseudo-code → only simple datastructures needed

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 31/34

slide-138
SLIDE 138

Motivation D&B-search Search & Partial Ordering Conclusion

D&B-search

Novel Search method: Integrating D-search and B-search Ratio of D-search and B-search balanced by a parameter Family of algorithms in parameter c

D-search and B-Search as borderline cases Complete in all non-borderline cases Non-repetitive, i.e. time complexity is linear in size Space complexity is polynomial in depth. Polynomial depends on parameter c

Formal proofs of these properties Built-in adaption to the searched tree Better than running D-Search and B-Search in parallel Implementation in form of detailed pseudo-code → only simple datastructures needed

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 31/34

slide-139
SLIDE 139

Motivation D&B-search Search & Partial Ordering Conclusion

D&B-search

Novel Search method: Integrating D-search and B-search Ratio of D-search and B-search balanced by a parameter Family of algorithms in parameter c

D-search and B-Search as borderline cases Complete in all non-borderline cases Non-repetitive, i.e. time complexity is linear in size Space complexity is polynomial in depth. Polynomial depends on parameter c

Formal proofs of these properties Built-in adaption to the searched tree Better than running D-Search and B-Search in parallel Implementation in form of detailed pseudo-code → only simple datastructures needed

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 31/34

slide-140
SLIDE 140

Motivation D&B-search Search & Partial Ordering Conclusion

D&B-search

Novel Search method: Integrating D-search and B-search Ratio of D-search and B-search balanced by a parameter Family of algorithms in parameter c

D-search and B-Search as borderline cases Complete in all non-borderline cases Non-repetitive, i.e. time complexity is linear in size Space complexity is polynomial in depth. Polynomial depends on parameter c

Formal proofs of these properties Built-in adaption to the searched tree Better than running D-Search and B-Search in parallel Implementation in form of detailed pseudo-code → only simple datastructures needed

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 31/34

slide-141
SLIDE 141

Motivation D&B-search Search & Partial Ordering Conclusion

Theoretical-Framework

Based on partial orderings Covers finite and infinite trees uniformly High analytic power, concise and precise proofs

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 32/34

slide-142
SLIDE 142

Motivation D&B-search Search & Partial Ordering Conclusion

Future work

Combine D-search and iterative deepening to D&I-search by the same principle

Behaves (almost) like D-search on finite trees Behaves (almost) like iterative-deepening on infinite trees Achieved by the same depth bounds fi as for D&B-search

Same for other combinations Prototype implementation Empirical comparison to other uninformed search methods → Focus: Logic programming applications using backward reasoning approaches with and without memorization

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 33/34

slide-143
SLIDE 143

Motivation D&B-search Search & Partial Ordering Conclusion

Thank You

Simon Brodt, François Bry, Norbert Eisinger Search for More Declarativity 34/34