Solving equations over small multi-unary algebras Przemyslaw - - PowerPoint PPT Presentation

solving equations over small multi unary algebras
SMART_READER_LITE
LIVE PREVIEW

Solving equations over small multi-unary algebras Przemyslaw - - PowerPoint PPT Presentation

Introduction to problem Current results Summary Solving equations over small multi-unary algebras Przemyslaw Broniek Algorithmics Research Group Jagiellonian University, Krakw Chambry-Krakw-Lyon Workshop, 20-21 June 2005 Przemyslaw


slide-1
SLIDE 1

Introduction to problem Current results Summary

Solving equations over small multi-unary algebras

Przemyslaw Broniek

Algorithmics Research Group Jagiellonian University, Kraków

Chambéry-Kraków-Lyon Workshop, 20-21 June 2005

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-2
SLIDE 2

Introduction to problem Current results Summary

Outline

1

Introduction to problem SAT and equations solving Multi-unary algebras

2

Current results Three-element algebras Other properties

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-3
SLIDE 3

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Outline

1

Introduction to problem SAT and equations solving Multi-unary algebras

2

Current results Three-element algebras Other properties

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-4
SLIDE 4

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Why solving equations is hard?

We can look at SAT like solving an equation of the specific form

  • ver Boole Algebra:

Example (x1 ∨ ¬y1 ∨ ¬z1) ∧ · · · ∧ (xn ∨ ¬yn ∨ zn) = 1 Thus solving equations is in general a hard problem. Interesting and open question is: Question How computational complexity of solving equations depends of the choosing of algebra?

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-5
SLIDE 5

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Why solving equations is hard?

We can look at SAT like solving an equation of the specific form

  • ver Boole Algebra:

Example (x1 ∨ ¬y1 ∨ ¬z1) ∧ · · · ∧ (xn ∨ ¬yn ∨ zn) = 1 Thus solving equations is in general a hard problem. Interesting and open question is: Question How computational complexity of solving equations depends of the choosing of algebra?

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-6
SLIDE 6

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Problem specification

Definition POLSAT(A) is a problem of solving an equation of the form: t = s where t, s are polynomials over A. Definition MPOLSAT(A) is a problem of solving a system of equations of the form: ti = si, i = 1..n where ti, si for i = 1..n are polynomials over A.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-7
SLIDE 7

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Problem specification

Definition POLSAT(A) is a problem of solving an equation of the form: t = s where t, s are polynomials over A. Definition MPOLSAT(A) is a problem of solving a system of equations of the form: ti = si, i = 1..n where ti, si for i = 1..n are polynomials over A.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-8
SLIDE 8

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Additional operations

Sometimes it is useful to add extra operations that are definable from the original operations of the given algebra: Example In a group G = (G, {◦, −}) we can add: x ⋄ y = x ◦ y − y ◦ x Adding such operations could affect complexity, because expanding all the extra operations into original operations of the algebra may need exponential time.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-9
SLIDE 9

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Extensions

Definition POLSAT∗(A) is a problem of solving an equation of the form: t = s where t, s are polynomials over A with additional operations. Definition MPOLSAT∗(A) is a problem of solving a system of equations of the form: ti = si, i = 1..n where ti, si for i = 1..n are polynomials over A with additional

  • perations.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-10
SLIDE 10

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Extensions

Definition POLSAT∗(A) is a problem of solving an equation of the form: t = s where t, s are polynomials over A with additional operations. Definition MPOLSAT∗(A) is a problem of solving a system of equations of the form: ti = si, i = 1..n where ti, si for i = 1..n are polynomials over A with additional

  • perations.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-11
SLIDE 11

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Groups characterization

The characterization of groups is known and shows up a dichotomy: Theorem If G is a finite group then POLSAT∗(G) is polynomial, when G is nilpotent and NP-Complete otherwise. Theorem If G is a finite group then MPOLSAT(G) is polynomial, when G is abelian and NP-Complete otherwise.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-12
SLIDE 12

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Groups characterization

The characterization of groups is known and shows up a dichotomy: Theorem If G is a finite group then POLSAT∗(G) is polynomial, when G is nilpotent and NP-Complete otherwise. Theorem If G is a finite group then MPOLSAT(G) is polynomial, when G is abelian and NP-Complete otherwise.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-13
SLIDE 13

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Outline

1

Introduction to problem SAT and equations solving Multi-unary algebras

2

Current results Three-element algebras Other properties

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-14
SLIDE 14

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Class definition

Definition We call an algebra A = (A, F) multi-unary if all of its operations f ∈ F are unary. Example A = ({0, 1, 2}, {f, g, h}), where operations are the following: x f g h 1 1 1 2 1

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-15
SLIDE 15

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Class definition

Definition We call an algebra A = (A, F) multi-unary if all of its operations f ∈ F are unary. Example A = ({0, 1, 2}, {f, g, h}), where operations are the following: x f g h 1 1 1 2 1

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-16
SLIDE 16

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Operations monoid

Definition If A = (A, F) is a multi-unary algebra then we can define

  • perations monoid F ∗. The identity operation is its neutral
  • element. We generate all the elements by the available
  • perations f ∈ F.

Example A = ({0, 1, 2}, {f, g, h}), where operations are the following: x f g h 1 1 1 2 1

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-17
SLIDE 17

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Operations monoid

Definition If A = (A, F) is a multi-unary algebra then we can define

  • perations monoid F ∗. The identity operation is its neutral
  • element. We generate all the elements by the available
  • perations f ∈ F.

Example A = ({0, 1, 2}, {f, g, h}), where operations are the following: x f g h 1 1 1 2 1

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-18
SLIDE 18

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Operations monoid example

Example The operations monoid contains 9 elements: x id f g h 1 i j k 1 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 We always can use any operation from the monoid, because they are all definable with finitely many original algebra

  • perations, thus changing the representations is easy.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-19
SLIDE 19

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Multi-unary algebras situation

Theorem If A = (A, F) is a multi-unary algebra then POLSAT(A) is polynomial. Proof. The most complicated equation is of the form: f(x) = g(y) Where f, g ∈ F ∗ and x = y are variables. There will always be at most 2 variables, because of the lack of binary operations. We can simple check all the possibilities in O(|A|2) time.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-20
SLIDE 20

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Multi-unary algebras situation

Theorem If A = (A, F) is a multi-unary algebra then POLSAT(A) is polynomial. Proof. The most complicated equation is of the form: f(x) = g(y) Where f, g ∈ F ∗ and x = y are variables. There will always be at most 2 variables, because of the lack of binary operations. We can simple check all the possibilities in O(|A|2) time.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-21
SLIDE 21

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

System of equations

System of equations happens to be harder: Fact A = ({0, 1, 2}, {f, g, h}), where operations are the following: x f g h 1 1 1 2 1 MPOLSAT(A) is NP-Complete.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-22
SLIDE 22

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

1-in-3-SAT problem

Definition 1-in-3-SAT is a version of SAT in which we have a formula F = C0 ∧ · · · ∧ Cn with the following properties: Each clause is of the form Ci = (x ∨ y ∨ z) We want to find assignment in which exactly one variable in each clause is positive. Example For a formula: (x ∨ y ∨ z) ∧ (x ∨ t ∨ v) ∧ (v ∨ t ∨ z) the solution is: (0 ∨ 1 ∨ 0) ∧ (0 ∨ 0 ∨ 1) ∧ (1 ∨ 0 ∨ 0)

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-23
SLIDE 23

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

1-in-3-SAT problem

Definition 1-in-3-SAT is a version of SAT in which we have a formula F = C0 ∧ · · · ∧ Cn with the following properties: Each clause is of the form Ci = (x ∨ y ∨ z) We want to find assignment in which exactly one variable in each clause is positive. Example For a formula: (x ∨ y ∨ z) ∧ (x ∨ t ∨ v) ∧ (v ∨ t ∨ z) the solution is: (0 ∨ 1 ∨ 0) ∧ (0 ∨ 0 ∨ 1) ∧ (1 ∨ 0 ∨ 0)

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-24
SLIDE 24

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

1-in-3-SAT problem

Definition 1-in-3-SAT is a version of SAT in which we have a formula F = C0 ∧ · · · ∧ Cn with the following properties: Each clause is of the form Ci = (x ∨ y ∨ z) We want to find assignment in which exactly one variable in each clause is positive. Example For a formula: (x ∨ y ∨ z) ∧ (x ∨ t ∨ v) ∧ (v ∨ t ∨ z) the solution is: (0 ∨ 1 ∨ 0) ∧ (0 ∨ 0 ∨ 1) ∧ (1 ∨ 0 ∨ 0)

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-25
SLIDE 25

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

1-in-3-SAT problem

Definition 1-in-3-SAT is a version of SAT in which we have a formula F = C0 ∧ · · · ∧ Cn with the following properties: Each clause is of the form Ci = (x ∨ y ∨ z) We want to find assignment in which exactly one variable in each clause is positive. Example For a formula: (x ∨ y ∨ z) ∧ (x ∨ t ∨ v) ∧ (v ∨ t ∨ z) the solution is: (0 ∨ 1 ∨ 0) ∧ (0 ∨ 0 ∨ 1) ∧ (1 ∨ 0 ∨ 0)

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-26
SLIDE 26

Introduction to problem Current results Summary SAT and equations solving Multi-unary algebras

Reduction from 1-in-3-SAT

For a given formula F = C0 ∧ · · · ∧ Cn built with clauses Ci we do a transformation: Ci = x ∨ y ∨ z

  f(vi) = x g(vi) = y h(vi) = z x f g h 1 1 1 2 1

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-27
SLIDE 27

Introduction to problem Current results Summary Three-element algebras Other properties

Outline

1

Introduction to problem SAT and equations solving Multi-unary algebras

2

Current results Three-element algebras Other properties

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-28
SLIDE 28

Introduction to problem Current results Summary Three-element algebras Other properties

Order on operations

Definition If A = (A, F) is a multi-unary algebra then we can define order

  • n operations P(A) = (F ∗, ≤), where f ≤ g when

Ker(f) ⊆ Ker(g). Example A = ({0, 1, 2}, {f, g, h}), with operations: x f g h 1 1 2 1 We have: g ≤ f, h ≤ f, g h.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-29
SLIDE 29

Introduction to problem Current results Summary Three-element algebras Other properties

Order on operations

Definition If A = (A, F) is a multi-unary algebra then we can define order

  • n operations P(A) = (F ∗, ≤), where f ≤ g when

Ker(f) ⊆ Ker(g). Example A = ({0, 1, 2}, {f, g, h}), with operations: x f g h 1 1 2 1 We have: g ≤ f, h ≤ f, g h.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-30
SLIDE 30

Introduction to problem Current results Summary Three-element algebras Other properties

Characterization

Theorem If A is a three-element multi-unary algebra then MPOLSAT(A) is polynomial if width(P(A)) ≤ 2, and is NP-Complete otherwise.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-31
SLIDE 31

Introduction to problem Current results Summary Three-element algebras Other properties

Proof - Reduction

width(P(A)) = 3 ⇒ MPOLSAT(A) ∈ NPC Up to isomorphism we have two possibilities: x f g h 1 1 1 2 1 x f g h 1 1 1 2 1 1 The reduction from 1-in-3-SAT into first one was presented. The second one is only a bit harder:

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-32
SLIDE 32

Introduction to problem Current results Summary Three-element algebras Other properties

Reduction from 1-in-3-SAT

For a given formula F built with clauses Ci we do a transformation: x    f(vx) = 1 g(vx) = x h(vx) = x′ Ci = x ∨ y ∨ z

  f(vi) = x′ g(vi) = y h(vi) = z x f g h 1 1 1 2 1 1

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-33
SLIDE 33

Introduction to problem Current results Summary Three-element algebras Other properties

Proof - Algorithm

width(P(A)) ≤ 2 ⇒ MPOLSAT(A) ∈ P We can perform a simple reduction of given system of equations and get: Reduction equations of the form f(x) = g(y), where x = y, f(A) = g(A) and |f(A)| = 2. constraints of the form x ∈ C where |C| = 2.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-34
SLIDE 34

Introduction to problem Current results Summary Three-element algebras Other properties

Proof - Algorithm

width(P(A)) ≤ 2 ⇒ MPOLSAT(A) ∈ P We can perform a simple reduction of given system of equations and get: Reduction equations of the form f(x) = g(y), where x = y, f(A) = g(A) and |f(A)| = 2. constraints of the form x ∈ C where |C| = 2.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-35
SLIDE 35

Introduction to problem Current results Summary Three-element algebras Other properties

Proof - Algorithm

width(P(A)) ≤ 2 ⇒ MPOLSAT(A) ∈ P We can perform a simple reduction of given system of equations and get: Reduction equations of the form f(x) = g(y), where x = y, f(A) = g(A) and |f(A)| = 2. constraints of the form x ∈ C where |C| = 2.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-36
SLIDE 36

Introduction to problem Current results Summary Three-element algebras Other properties

Proof - Algorithm

Now we do a reduction into 2-SAT. (x, f) ∈ V × F

  • xf

Our interpretation will be: xf ⇔ |f −1(f(x))| = 1 x f xf F 1 F 2 1 T The equations are transformed to formulas: f(x) = g(y)

  • xf ⇔ [¬]yg

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-37
SLIDE 37

Introduction to problem Current results Summary Three-element algebras Other properties

Proof - Algorithm

There are interactions between SAT variables: Example x f g h xf xg xh 1 T F F 1 1 1 F F F 2 1 1 F T T We add the following formulas: xf ⇒ ¬xg, xf ⇒ ¬xh, xg ⇒ ¬xf, xg ⇔ xh.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-38
SLIDE 38

Introduction to problem Current results Summary Three-element algebras Other properties

Assignment transformation

If we have the solution of a system of equations then we will have the satisfying assignment for the variables xfi. If we have the satisfying assignment then we have to find the

  • solution. For a variable x we have the values xfi. There are two

possibilities: ∃f ∈ F xf = T. From the construction we know the value for x and know that it satisfies xg for g = f. ∀f ∈ F xf = F. From the condition width(P) ≤ 2 we know that there exists y ∈ A such that all of them are satisfied by the assignment x = y.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-39
SLIDE 39

Introduction to problem Current results Summary Three-element algebras Other properties

Assignment transformation

If we have the solution of a system of equations then we will have the satisfying assignment for the variables xfi. If we have the satisfying assignment then we have to find the

  • solution. For a variable x we have the values xfi. There are two

possibilities: ∃f ∈ F xf = T. From the construction we know the value for x and know that it satisfies xg for g = f. ∀f ∈ F xf = F. From the condition width(P) ≤ 2 we know that there exists y ∈ A such that all of them are satisfied by the assignment x = y.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-40
SLIDE 40

Introduction to problem Current results Summary Three-element algebras Other properties

Outline

1

Introduction to problem SAT and equations solving Multi-unary algebras

2

Current results Three-element algebras Other properties

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-41
SLIDE 41

Introduction to problem Current results Summary Three-element algebras Other properties

When it is easy?

Theorem If a multi-unary algebra A = (A, {f}) has only one operation f then MPOLSAT(A) is polynomial. Theorem If all operations of a multi-unary algebra A = (A, F) are constants or permutations then MPOLSAT(A) is polynomial.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-42
SLIDE 42

Introduction to problem Current results Summary Three-element algebras Other properties

When it is easy?

Theorem If a multi-unary algebra A = (A, {f}) has only one operation f then MPOLSAT(A) is polynomial. Theorem If all operations of a multi-unary algebra A = (A, F) are constants or permutations then MPOLSAT(A) is polynomial.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-43
SLIDE 43

Introduction to problem Current results Summary Three-element algebras Other properties

Easy class

Theorem If a multi-unary algebra A = (A, F) have the following conditions: ∃x0∈A∀f∈F f(x0) = x0 ∀x∈A, x=x0 |f −1(x)| ≤ 1 then MPOLSAT(A) is polynomial.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-44
SLIDE 44

Introduction to problem Current results Summary Three-element algebras Other properties

Easy class

Theorem If a multi-unary algebra A = (A, F) have the following conditions: ∃x0∈A∀f∈F f(x0) = x0 ∀x∈A, x=x0 |f −1(x)| ≤ 1 then MPOLSAT(A) is polynomial.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-45
SLIDE 45

Introduction to problem Current results Summary Three-element algebras Other properties

Easy class

Theorem If a multi-unary algebra A = (A, F) have the following conditions: ∃x0∈A∀f∈F f(x0) = x0 ∀x∈A, x=x0 |f −1(x)| ≤ 1 then MPOLSAT(A) is polynomial.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-46
SLIDE 46

Introduction to problem Current results Summary Three-element algebras Other properties

Bad news

Example A = ({0 . . . n}, {f1, . . . , fn}), where operations are the following: x f1 f2 . . . fn . . . 1 1 . . . 2 1 . . . . . . . . . . . . ... . . . n . . . 1 Algebra is easy (polynomial), but width of an order of

  • perations is n.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-47
SLIDE 47

Introduction to problem Current results Summary

Summary

We know the characterization of three-element multi-unary algebras. Future - characterization of all multi-unary algebras.

Przemyslaw Broniek Solving equations over small multi-unary algebras

slide-48
SLIDE 48

Introduction to problem Current results Summary

Summary

We know the characterization of three-element multi-unary algebras. Future - characterization of all multi-unary algebras.

Przemyslaw Broniek Solving equations over small multi-unary algebras