coverable functions
play

Coverable functions Petr Ku era, joint work with Endre Boros, Ond - PowerPoint PPT Presentation

Coverable functions Petr Ku era, joint work with Endre Boros, Ond ej epek, Alexandr Kogan Coverable functions Let us recall that given a Boolean function f , we denote by: cnf ( f ) - minimum number of clauses needed to represent f by a


  1. Coverable functions Petr Ku č era, joint work with Endre Boros, Ond ř ej Č epek, Alexandr Kogan

  2. Coverable functions Let us recall that given a Boolean function f , we denote by: cnf ( f ) - minimum number of clauses needed to represent f by a CNF . ess ( f ) - maximum number of pairwise disjoint essential sets of implicates of f . A function f is coverable, if cnf ( f )= ess ( f ) .

  3. Talk outline We already know from the previous talk, that not every function is coverable. We shall show, that quadratic, acyclic, quasi- acyclic, and CQ Horn functions are coverable. Before that we shall show, that in case of Horn functions we can restrict our attention to only pure Horn functions.

  4. Negative implicates Let f be a Horn function. Let be an exclusive set of implicates of f , such X that no two clauses in are E = I ( f ) \ R ( X ) resolvable. Then there exists an integer k , and pairwise disjoint essential sets , such that for Q 1 , . . . , Q k ⊆ E every CNF representing f : C |C ∩ Q j | = 1 , j = 1 , . . . , k does not contain other elements of . C E

  5. Negative implicates We can use this proposition to negative implicates, if we put: = pure Horn implicates of f , and X = negative implicates of f . E Now we can observe that: ess ( f ) = ess ( X ) + k Therefore we can restrict our attention to only pure Horn functions.

  6. CNF Graph For a Horn CNF let be the digraph G ϕ = ( N, A ϕ ) ϕ defined as: N is the set of variables of . ϕ ( x , y ) belongs to , if there is a clause C in , A ϕ ϕ which contains and y . x , where f is the function represented by , is G f ϕ transitive closure of . G ϕ

  7. Quadratic functions A quadratic function is function, which can be represented by a CNF , in which every clause ϕ consists of at most two literals. Minimization algorithm for pure Horn quadratic functions: Make prime and irredundant. ϕ Construct CNF graph . G ϕ Find strong components of . G ϕ Replace strong components by cycles.

  8. Example Let us consider the following CNF: ( a ∨ b ) ∧ ( b ∨ c ) ∧ ( c ∨ d ) ( d ∨ c ) ∧ ( c ∨ e ) ∧ ( e ∨ c ) ∧ CNF graph follows: d a b c e

  9. Example A shortest CNF: ( a ∨ b ) ∧ ( b ∨ c ) ∧ ( c ∨ d ) ∧ ( d ∨ e ) ∧ ( e ∨ c ) and its CNF graph: d a b c e

  10. Disjoint essential sets for quadratic functions Let us have a clause and let us define ( x ∨ y ) essential set for this clause. E If x and y belong to different strong components of , we put into , if u belongs to the ( u ∨ v ) G f E same strong component as x and v belongs to the same strong component as y . x v u y

  11. Disjoint essential sets ... If x and y belong to the same component of , we G f put into for every u in this component. ( u ∨ y ) E u . . . x y It is easily possible to find vector based definition of these sets as well. If the input CNF is minimum, the sets are disjoint.

  12. Example For our shortest CNF ( a ∨ b ) ∧ ( b ∨ c ) ∧ ( c ∨ d ) ∧ ( d ∨ e ) ∧ ( e ∨ c ) we would have: ( a ∨ b ) { ( a ∨ b ) } → d ( b ∨ c ) { ( b ∨ c ) } → ( c ∨ d ) { ( c ∨ d ) , ( e ∨ d ) } → a b c ( d ∨ e ) { ( d ∨ e ) , ( c ∨ e ) } → ( e ∨ c ) { ( e ∨ c ) , ( d ∨ c ) } → e

  13. Essentiality of defined sets I At first let us assume, that x and y belong to different strong components of . G f We have u in the same SC as x , v in the same SC as y , and for some z . ( u ∨ v ) = R ( u ∨ z, z ∨ v ) If z does not belong to the same SC as x or y , then is redundant. ( x ∨ y ) Therefore one of parent clauses belongs to . E z u v x y

  14. Essentiality of defined sets I At first let us assume, that x and y belong to different strong components of . G f We have u in the same SC as x , v in the same SC as y , and for some z . ( u ∨ v ) = R ( u ∨ z, z ∨ v ) If z does not belong to the same SC as x or y , then is redundant. ( x ∨ y ) Therefore one of parent clauses belongs to . E z u v x y

  15. Essentiality of defined sets I At first let us assume, that x and y belong to different strong components of . G f We have u in the same SC as x , v in the same SC as y , and for some z . ( u ∨ v ) = R ( u ∨ z, z ∨ v ) If z does not belong to the same SC as x or y , then is redundant. ( x ∨ y ) Therefore one of parent clauses belongs to . E z u v x y

  16. Essentiality II Now let us assume, that x and y belong to the same strong component of . G f We have u in this strong component and z , for which . ( u ∨ y ) = R ( u ∨ z, z ∨ y ) It follows, that z belong to the same strong component as well. u z x y

  17. Acyclic functions A function f is acyclic, if its CNF graph is acyclic. Prime and irredundant CNF is the only minimum representation of an acyclic function. Given the only prime and irredundant acyclic CNF , we define for each clause an C ∈ ϕ ϕ essential set . E C = { C } This set is essential due to similar reasons as in the case of quadratic functions. Vector based definition is also possible.

  18. Quasi-acyclic functions A function f is quasi-acyclic, if every two variables x and y , which belong to the same strong component of , are logically equivalent. G f Definition of essential sets is a combination of cases of quadratic and acyclic function.

  19. CQ functions A Horn CNF is CQ, if in every clause at C ∈ ϕ ϕ most one subgoal belongs to the same strong component as its head. A Horn function f is CQ, if it can be represented by a CQ CNF . a a c c b b ( a ∨ b ∨ c ) ∧ ( c ∨ b ) ( a ∨ b ∨ c ) ∧ ( c ∨ b ) ∧ ( c ∨ a ) is CQ is CQ

  20. CQ and essential sets Any prime CNF representation of a CQ function is a CQ CNF . In order to be able to define disjoint essential sets, we have to investigate structure of minimum CQ CNFs and minimization algorithm for CQ functions.

  21. Decomposition lemma Let us have: a function f , a chain of exclusive subsets ∅ = X 0 ⊆ X 1 ⊆ · · · ⊆ X t in which , R ( X t ) = I ( f ) minimal subsets , such C ∗ i ⊆ X i \ X i − 1 , i = 1 , . . . , t that . R ( X i − 1 ∪ C ∗ i ) = R ( X i ) Then: is a minimal representation of f . C ∗ = � t i =1 C ∗ i If we can find these sets effectively and solve corresponding subproblems effectively, we are done.

  22. Clause graph Let be a pure Horn CNF representing a function ϕ f , we define clause graph as follows: D ϕ = ( V ϕ , E ϕ ) V ϕ = ϕ if and only if: ( A ∨ u, B ∨ v ) ∈ E ϕ v can be reached from u by a path in , and G ϕ for every , is an implicate of f . ( B ∨ a ) a ∈ A A u B v

  23. Properties of clause graphs By we denote . D f = ( V f , E f ) D I ( f ) By , where H is a digraph and u one of its Cone H ( u ) vertices, we denote the set of vertices, from which there is a path to u in H . If , then and C = R ( C 1 , C 2 ) ( C 1 , C ) ∈ E f ( C 2 , C ) ∈ E f Therefore is an exclusive set. Cone D f ( C ) If K is a strong component of containing C , D f then is again an exclusive set. Cone D f ( C ) \ K Although the size of may be exponentially D f larger than , it is sufficient to work with , D ϕ ϕ which can be constructed in polynomial time.

  24. Back to decomposition lemma Let be strong components of in K 1 , . . . , K t D f topological order, and let us define . X i = � i j =1 K j , i = 1 , ..., t Every is an exclusive set and we can X i , i = 1 , ..., t use it in decomposition lemma. Representation given by is sufficient for our X i ∩ ϕ needs. Now we only have to solve partial problem for each strong component of . K i D f

  25. Strong components We say, that an implicate of f is of ( A ∨ u ) type 0, if no element of A belong to the same strong component of as u , and it is of G f type 1, if one element of A belongs to the same strong component of as u . G f If K is a strong component of and f is CQ, then D f all clauses belonging to K are of the same type. Therefore we can assign this type to K as well. If K is of type 0, we can leave the clauses in K ∩ ϕ as they are, primality and irredundancy of is ϕ sufficient in this case.

  26. Type 1 (example) We shall demonstrate what we can do with strong components of type 1 on the following example: = ( b ∨ c ) ∧ ( b ∨ e ) ∧ ( a ∨ c ∨ b ) ϕ ( a ∨ e ∨ b ) ∧ ( a ∨ d ∨ b ) ∧ ( a ∨ b ∨ d ) ∧ G ϕ c a b d e

  27. Type 1 (example) has two strong components: D ϕ K 1 = { ( b ∨ c ) , ( b ∨ e ) } K 2 = { ( a ∨ c ∨ b ) , ( a ∨ e ∨ b ) , ( a ∨ d ∨ b ) , ( a ∨ b ∨ d ) } is itself minimum (primality and irredundancy K 1 are sufficient for it).

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