introduction to unification theory
play

Introduction to Unification Theory Solving Systems of Linear - PowerPoint PPT Presentation

Introduction to Unification Theory Solving Systems of Linear Diophantine Equations Temur Kutsia RISC, Johannes Kepler University Linz kutsia@risc.jku.at ACU-Unification We saw an example how to solve ACU-unification problem. Reduction


  1. Introduction to Unification Theory Solving Systems of Linear Diophantine Equations Temur Kutsia RISC, Johannes Kepler University Linz kutsia@risc.jku.at

  2. ACU-Unification ◮ We saw an example how to solve ACU-unification problem. ◮ Reduction to systems of linear Diophantine equations (LDEs) over natural numbers.

  3. Elementary ACU-Unification ◮ Elementary ACU-unification problem { f ( x, f ( x, y )) . = ? ACU f ( z, f ( z, z )) } reduces to homogeneous linear Diophantine equation 2 x + y = 3 z. ◮ Each equation in the unification problem gives rise to one linear Diophantine equation. ◮ A most general ACU-unifier is obtained by combining all the unifiers corresponding to the minimal solutions of the system of LDEs.

  4. Elementary ACU-Unification ◮ Γ = { f ( x, f ( x, y )) . = ? ACU f ( z, f ( z, z )) } and S = { 2 x + y = 3 z } . ◮ S has three minimal solutions: (1 , 1 , 1) , (0 , 3 , 1) , (3 , 0 , 2) . ◮ Three unifiers of Γ : σ 1 = { x �→ v 1 , y �→ v 1 , z �→ v 1 } σ 2 = { x �→ e, y �→ f ( v 2 , f ( v 2 , v 2 )) , z �→ v 2 } σ 3 = { x �→ f ( v 3 , f ( v 3 , v 3 )) , y �→ e, z �→ f ( v 3 , v 3 ) } ◮ A most general unifier of Γ : σ = { x �→ f ( v 1 , f ( v 3 , f ( v 3 , v 3 ))) , y �→ f ( v 1 , f ( v 2 , f ( v 2 , v 2 ))) , z �→ f ( v 1 , f ( v 2 , f ( v 3 , v 3 ))) }

  5. ACU-Unification with constants ◮ ACU-unification problem with constants Γ = { f ( x, f ( x, y )) . = ? ACU f ( a, f ( z, f ( z, z ))) } reduces to inhomogeneous linear Diophantine equation S = { 2 x + y = 3 z + 1 } . ◮ The minimal nontrivial natural solutions of S are (0 , 1 , 0) and (2 , 0 , 1) .

  6. ACU-Unification with constants ◮ ACU-unification problem with constants Γ = { f ( x, f ( x, y )) . = ? ACU f ( a, f ( z, f ( z, z ))) } reduces to inhomogeneous linear Diophantine equation S = { 2 x + y = 3 z + 1 } . ◮ Every natural solution of S is obtained by as the sum of one of the minimal solution and a solution of the corresponding homogeneous LDE 2 x + y = 3 z . ◮ One element of the minimal complete set of unifiers of Γ is obtained from the combination of one minimal solution of S with the set of all minimal solutions of 2 x + y = 3 z .

  7. ACU-Unification with constants ◮ ACU-unification problem with constants Γ = { f ( x, f ( x, y )) . = ? ACU f ( a, f ( z, f ( z, z ))) } reduces to inhomogeneous linear Diophantine equation S = { 2 x + y = 3 z + 1 } . ◮ The minimal complete set of unifiers of Γ is { σ 1 , σ 2 } , where σ 1 = { x �→ f ( v 1 , f ( v 3 , f ( v 3 , v 3 ))) , y �→ f ( a, f ( v 1 , f ( v 2 , f ( v 2 , v 2 ))) , z �→ f ( v 1 , f ( v 2 , f ( v 3 , v 3 ))) } σ 2 = { x �→ f ( a, f ( a, f ( v 1 , f ( v 3 , f ( v 3 , v 3 ))))) , y �→ f ( v 1 , f ( v 2 , f ( v 2 , v 2 )) , z �→ f ( a, f ( v 1 , f ( v 2 , f ( v 3 , v 3 )))) }

  8. How to Solve Systems of LDEs over Naturals? Contejean-Devie Algorithm: Evelyne Contejean and Herv´ e Devie. An Efficient Incremental Algorithm for Solving Systems of Linear Diophantine Equations. Information and Computation 113(1): 143–172 (1994).

  9. How to Solve Systems of LDEs over Naturals? Contejean-Devie Algorithm: Evelyne Contejean and Herv´ e Devie. An Efficient Incremental Algorithm for Solving Systems of Linear Diophantine Equations. Information and Computation 113(1): 143–172 (1994). Generalizes Fortenbacher’s Algorithm for solving a single equation: Michael Clausen and Albrecht Fortenbacher. Efficient Solution of Linear Diophantine Equations. J. Symbolic Computation 8(1,2): 201–216 (1989).

  10. Homogeneous Case Homogeneous linear Diophantine system with m equations and n variables:  + · · · + a 11 x 1 a 1 n x n = 0   . . . . . . . . .  + · · · + = 0 a m 1 x 1 a mn x n  ◮ a ij ’s are integers. ◮ Looking for nontrivial natural solutions.

  11. Homogeneous Case Example � − x 1 + x 2 + 2 x 3 − 3 x 4 = 0 − x 1 + 3 x 2 − 2 x 3 − x 4 = 0 Nontrivial solutions: ◮ s 1 = (0 , 1 , 1 , 1) ◮ s 2 = (4 , 2 , 1 , 0) ◮ s 3 = (0 , 2 , 2 , 2) ◮ s 4 = (8 , 4 , 2 , 0) ◮ s 5 = (4 , 3 , 2 , 1) ◮ s 6 = (8 , 5 , 3 , 1) ◮ . . .

  12. Homogeneous Case Example � − x 1 + x 2 + 2 x 3 − 3 x 4 = 0 − x 1 + 3 x 2 − 2 x 3 − x 4 = 0 Nontrivial solutions: ◮ s 1 = (0 , 1 , 1 , 1) ◮ s 2 = (4 , 2 , 1 , 0) ◮ s 3 = (0 , 2 , 2 , 2) = 2 s 1 ◮ s 4 = (8 , 4 , 2 , 0) = 2 s 2 ◮ s 5 = (4 , 3 , 2 , 1) = s 1 + s 2 ◮ s 6 = (8 , 5 , 3 , 1) = s 1 + 2 s 2 ◮ . . .

  13. Homogeneous Case Homogeneous linear Diophantine system with m equations and n variables:  + · · · + a 11 x 1 a 1 n x n = 0   . . . . . . . . .  + · · · + = 0 a m 1 x 1 a mn x n  ◮ a ij ’s are integers. ◮ Looking for a basis in the set of nontrivial natural solutions.

  14. Homogeneous Case Homogeneous linear Diophantine system with m equations and n variables:  + · · · + a 11 x 1 a 1 n x n = 0   . . . . . . . . .  + · · · + = 0 a m 1 x 1 a mn x n  ◮ a ij ’s are integers. ◮ Looking for a basis in the set of nontrivial natural solutions. ◮ Does it exist?

  15. Homogeneous Case The basis in the set S of nontrivial natural solutions of a homogeneous LDS is the set of ≫ -minimal elements S . ≫ is the ordering on tuples of natural numbers: ( x 1 , . . . , x n ) ≫ ( y 1 , . . . , y n ) if and only if ◮ x i ≥ y i for all 1 ≤ i ≤ n and ◮ x i > y i for some 1 ≤ i ≤ n .

  16. Matrix Form Homogeneous linear Diophantine system with m equations and n variables: Ax ↓ = 0 ↓ , where       · · · 0 a 11 a 1 n x 1 . . . . . . . . A := x ↓ := 0 ↓ :=       . . . .       · · · a m 1 a mn x n 0

  17. Matrix Form ◮ Canonical basis in N n : ( e 1 ↓ , . . . , e n ↓ ) .   0 . .   .     ◮ e j ↓ = 1 , with 1 in j ’s row.    .  .   .   0 ◮ Then Ax ↓ = x 1 Ae 1 ↓ + · · · + x n Ae n ↓ .

  18. Matrix Form ◮ a : The linear mapping associated to A .   a 11 x 1 + · · · + a 1 n x n . . . . a ( x ↓ ) =  = x 1 a ( e 1 ↓ )+ · · · + x n a ( e n ↓ ) .   . .  + · · · + a m 1 x 1 a mn x n

  19. Single Equation: Idea Case m = 1 : Single homogeneous LDE a 1 x 1 + · · · + a n x n = 0 . Fortenbacher’s idea: ◮ Search minimal solutions starting from the elements in the canonical basis of N n . ◮ Suppose the current vector v ↓ is not a solution. ◮ It can be nondeterministically increased, component by component, until it becomes a solution or greater than a solution. ◮ To decrease the search space, the following restrictions can be imposed: ◮ If a ( v ↓ ) > 0 , then increase by one some v j with a j < 0 . ◮ If a ( v ↓ ) < 0 , then increase by one some v j with a j > 0 .

  20. Single Equation: Idea Case m = 1 : Single homogeneous LDE a 1 x 1 + · · · + a n x n = 0 . Fortenbacher’s idea: ◮ Search minimal solutions starting from the elements in the canonical basis of N n . ◮ Suppose the current vector v ↓ is not a solution. ◮ It can be nondeterministically increased, component by component, until it becomes a solution or greater than a solution. ◮ To decrease the search space, the following restrictions can be imposed: ◮ If a ( v ↓ ) > 0 , then increase by one some v j with a j < 0 . ◮ If a ( v ↓ ) < 0 , then increase by one some v j with a j > 0 . ◮ (If a ( v ↓ ) a ( e j ↓ ) < 0 for some j , increase v j by one.)

  21. Single Equation: Geometric Interpretation of the Idea ◮ Fortenbacher’s condition If a ( v ↓ ) a ( e j ↓ ) < 0 for some j , increase v j by one. ◮ Increasing v j by one: a ( v ↓ + e j ↓ ) = a ( v ↓ ) + a ( e j ↓ ) . ◮ Going to the “right direction”, towards the origin. a ( v ↓ ) O Forbidden a ( e j ↓ ) direction

  22. Single Equation: Algorithm Case m = 1 : Single homogeneous LDE a 1 x 1 + · · · + a n x n = 0 . Fortenbacher’s algorithm: ◮ Start with the pair P, M of the set of potential solutions P = { e 1 ↓ , . . . , e n ↓ } and the set of minimal nontrivial solutions M = ∅ . ◮ Apply repeatedly the rules: 1. { v ↓ } ∪ P ′ , M = ⇒ P ′ , M , if v ↓ ≫ u ↓ for some u ↓ ∈ M . 2. { v ↓ } ∪ P ′ , M = ⇒ P ′ , { v ↓ } ∪ M, if a ( v ↓ ) = 0 and rule 1 is not applicable. 3. P, M = ⇒ { v ↓ + e j ↓ | v ↓ ∈ P, a ( v ↓ ) a ( e j ↓ ) < 0 , j ∈ 1 ..n } , M , if rules 1 and 2 are not applicable. ◮ If ∅ , M is reached, return M .

  23. System of Equations: Idea ◮ General case: System of homogeneous LDEs. ◮ a ( x ↓ ) = 0 ↓ . ◮ Generalizing Fortenbacher’s idea: ◮ Search minimal solutions starting from the elements in the canonical basis of N n . ◮ Suppose the current vector v ↓ is not a solution. ◮ It can be nondeterministically increased, component by component, until it becomes a solution or greater than a solution. ◮ To decrease the search space, increase only those components that lead to the “right direction”.

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend