## Matthias van der Hallen

Matthias van der Hallen

31/10/2019

## Matthias van der Hallen

### Education

• Secondary school in Essen: Latin - Greek
• Engineering @ KU Leuven: Computer Science (minor Electrical)

## Matthias van der Hallen

### Hobbies

• Sports: Cycling, running, duathlon, ...

## Graph Mining:

+ example

Candidate for $$\mathcal{G}$$

- example

Find a graph $$\mathcal{G}$$ such that:

• homomorphisms exist with the + examples
• no homomorphisms exist with the - examples

## First-Order Logic

• A domain of non-logical objects: $$alice, bob, charly ...$$
• Predicates: $$Person(alice), Person(bob), Dog(charly)$$
• Functions: $$Owner(charly)=alice$$

Introduce variables representing non-logical objects:

$$\forall x : Person(x) \lor Dog(x).$$

"Everything is either a dog or a person."

## Second-Order Logic

Also introduce variables representing predicates & functions:

$$\exists P : P(alice) \land P(bob).$$

"There is a set that contains both $$alice$$ and $$bob$$."

## Critical Friendship

Divide $$n$$ people over $$k$$ cars such that

nobody has to sit with someone they dislike.

## Critical Friendship

Observations:

• We can model 'dislikes' as a graph
• Proper division is a $$k$$-coloring

Alice

Bob

David

Charles

Alice

Bob

David

Charles

## Critical Friendship

Model:

type Person. % The Person type, corresponding to nodes
type Car.    % The Car type, corresponding to colours

dislike  :: (Person, Person). % A predicate encoding dislikes
sitsIn   :: (Person)→Car

∀ a,b :: Person: dislike(a,b) ⇒ sitsIn(a) ≠ sitsIn(b).

Note that we introduce a vocabulary $$V$$ of predicates and functions (dislike, sitsIn)

## Critical Friendship

### "Does a coloring exist?"

=> Perform model generation/expansion

∃ sitsIn :: Person -> Car ::
∀ a,b :: Person: dislike(a,b) ⇒ sitsIn(a) ≠ sitsIn(b).

Actually, solving a second-order formula $$\exists V : \phi$$

## Critical Friendship

### "Minimal number of cars?"

=> Perform 'minimization'

Actually: solving a second-order formula

$$\exists V : \phi \land \forall V' : \phi' \Rightarrow T(V) < T(V')$$

## Critical Friendship

Find critical friendship pairs: two distinct people $$p1,p2$$ s.t. there would not exist a proper division if they would dislike each other.

"All valid colorings assign $$p1$$ and $$p2$$ the same color"

## Critical Friendship

type Person. % The Person type, corresponding to nodes
type Car.    % The Car type, corresponding to colours

dislike :: (Person, Person). % A predicate encoding dislikes
p1 :: Person.                % A person constant
p2 :: Person.                % A second person constant

p1 ≠ p2.
∃sitsIn :: (Person)→Car:
∀ a,b :: Person: dislike(a,b) ⇒ sitsIn(a) ≠ sitsIn(b).
∀sitsIn :: (Person)→Car:
(∀ a,b :: Person: dislike(a,b) ⇒ sitsIn(a) ≠ sitsIn(b))
⇒ sitsIn(p1)=sitsIn(p2).

Model:

Find critical friendship pairs: two distinct people $$p1,p2$$ s.t. there would not exist a proper division if they would dislike each other.

## Critical Friendship

type Person. % The Person type, corresponding to nodes
type Car.    % The Car type, corresponding to colours

dislike :: (Person, Person). % A predicate encoding dislikes
p1 :: Person.                % A person constant
p2 :: Person.                % A second person constant

p1 ≠ p2.
∃sitsIn :: (Person)→Car:
∀ a,b :: Person: dislike(a,b) ⇒ sitsIn(a) ≠ sitsIn(b).
∀sitsIn :: (Person)→Car:
(∀ a,b :: Person: dislike(a,b) ⇒ sitsIn(a) ≠ sitsIn(b))
⇒ sitsIn(p1)=sitsIn(p2).

Alice

Bob

David

Charles

Alice

Bob

David

Charles

## Second Order Logic

Many interesting second-order constraints;

often implemented as specific inferences.

## Second Order Logic

ASP systems provide special interfaces for computing cautious consequences by means of query answering. But sometimes one has to do more, such as answering a complex query over the cautious consequences [...] So far, ASP solvers provide no support for such tasks. Instead, computations like this have to be done outside ASP systems, which hampers usability and limits the potential of ASP.

- Faber, Woltran

## SOGrounder

A system with support for second-order logic:

• Resembles IDP3
• Grounds to QBF
• Allow reuse of logic theories
• Takes the form of templates

## Solving QBF: QCDCL

PCNF $$\phi$$

Extend Assignment

$$\phi[A]$$ = T/F

Propagation

T: Learn Cube

F: Learn Clause

No

UNSAT

$$\empty$$ Clause

$$\empty$$ Cube

SAT

Backtrack

Cube/Clause $$\neq\empty$$

By krr

# Joint Seminar: Matthias

• 213
Loading comments...