Skip to main content

The Merits of Compositional Abstraction: A Case Study in Propositional Logic

  • Chapter
  • First Online:
Models, Mindsets, Meta: The What, the How, and the Why Not?

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 11200))

  • 451 Accesses

Abstract

We revisit a well-established and old topic in computational logic: algorithms – such as the one by Quine-McCluskey – that convert a formula of propositional logic into a semantically equivalent disjunctive normal form whose clauses are all prime implicants of that formula. This exercise in education is meant to honor Bernhard Steffen, who made important contributions in formal verification and its use of compositional abstraction, and who is a role model in transferring research insights into teaching addressed at students with varying skill levels. The algorithm we propose here is indeed compositional and can teach students about the value of compositional abstractions – making use of simple lattice-theoretic and semantic concepts.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 16.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Graf, S., Steffen, B., Lüttgen, G.: Compositional minimisation of finitestate systems using interface specifications. Form. Asp. Comput. 8(5), 607–616 (1996). https://doi.org/10.1007/BF01211911

    Article  MATH  Google Scholar 

  2. McCluskey, E.J.: Minimization of boolean functions. Bell Labs Tech. J. 35, 1417–1444 (1956)

    Article  MathSciNet  Google Scholar 

  3. Quine, W.: The problem of simplifying truth functions. Am. Math. Mon. 59, 521–531 (1952)

    Article  MathSciNet  Google Scholar 

  4. Steffen, B., Rüthing, O., Huth, M.: Mathematical Foundations of Advanced Informatics, Volume 1: Inductive Approaches. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-68397-3

    Book  MATH  Google Scholar 

  5. Umans, C.: The minimum equivalent DNF problem and shortest implicants. In: 39th Annual Symposium on Foundations of Computer Science, FOCS 1998, Palo Alto, California, USA, November 8–11, 1998, pp. 556–563 (1998). https://doi.org/10.1109/SFCS.1998.743506

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Michael Huth .

Editor information

Editors and Affiliations

A Exercises

A Exercises

  1. 1.

    Let (XY) be such that \({\mathsf {DNF}({X})}\equiv \phi \) and \({\mathsf {DNF}({Y})} \equiv \lnot \phi \). Show for all z in \({\mathsf {\mathbf{3}}}^{n}_\top \setminus \{\top \}\) that

    1. (a)

      \({\mathsf {Clause}({z})}\) is an implicant of \(\phi \) iff z is inconsistent with all y in Y

    2. (b)

      \({\mathsf {Clause}({z})}\) is an implicant of \(\lnot \phi \) iff z is inconsistent with all x in X

  2. 2.

    Reconsider the algorithm \({\mathsf {PI}({\phi })}\) and the definition of \({\mathsf {Reduce}({X},{Y})}\). The latter chose one element of a non-empty set Z to make a reduction. Discuss whether the algorithm \({\mathsf {PI}({\phi })}\) can be amended to make reductions for more than one or even all elements of set Z, concurrently or sequentially.

  3. 3.

    Consider a different implementation of \({\mathsf {Reduce}({X},{Y})}\) shown in Fig. 3 and let \({\mathsf {PI}'({\phi })}\) be the implementation of \({\mathsf {PI}({\phi })}\) that uses this new version \({\mathsf {Reduce}'({X},{Y})}\) of \({\mathsf {Reduce}({X},{Y})}\) instead.

    1. (a)

      Prove that \({\mathsf {PI}'({\phi })}\) terminates for all formulas \(\phi \) that are legitimate input to \({\mathsf {PI}({\phi })}\).

    2. (b)

      Prove that \({\mathsf {PI}'({\phi })}\) satisfies the following:

      (PI’) The call \({\mathsf {PI}({\phi })}\) returns a pair (XY) of finite setsets of \({\mathsf {\mathbf{3}}}^{n}_\top \setminus \{\top \}\) such that \({\mathsf {DNF}({X})}\equiv \phi \) and \({\mathsf {DNF}({Y})}\equiv \lnot \phi \).”

    3. (c)

      Show that (PI’) cannot be strengthened to the statement (PI) on page 8, i.e. the DNFs may not only contain prime implicants.

    4. (d)

      Consider a variant of \({\mathsf {PI}({\phi })}\) that uses both \({\mathsf {Reduce}({X},{Y})}\) and \({\mathsf {Reduce}'({X},{Y})}\) so that (PI) on page 8 will be satisfied of this variant. Discuss in which order these two types of reduction may have to be performed to guarantee (PI).

    5. (e)

      Let (XY) be the output of \({\mathsf {PI}({\phi })}\) for some formula \(\phi \). Show that the call to \({\mathsf {Reduce}'({X},{Y})}\) will compute an empty set Z.

  4. 4.

    Consider another implementation of function \({\mathsf {Conj}({(X,Y)},{(U,V)})}\), in which P and N are still computed as in that function but where there is no repeat statement for function \({\mathsf {Reduce}({X},{Y})}\). Instead, function \({\mathsf {Reduce}({X},{Y})}\) calls another function \({\mathsf {makePrime}({\emptyset },{X},{Y})}\) with header \({\mathsf {makePrime}({A},{X},{Y})}\). The idea is that \({\mathsf {makePrime}({A},{X},{Y})}\) is a tail-recursive function that iteratively goes through each element of X, converts it into a prime implicant of \({\mathsf {DNF}({X})}\) that is below that x, adds that prime implicant to set A, and removes any elements from X that are above that new prime implicant. The desired output of \({\mathsf {Reduce}({X},{Y})}\) is then the final value of set A.

    1. (a)

      Propose such an amended implementation of \({\mathsf {Conj}({X},{Y})}\) and the methods it calls.

    2. (b)

      Prove that this still realizes an implementation that satisfies requirement (PI) on page 8.

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Huth, M. (2019). The Merits of Compositional Abstraction: A Case Study in Propositional Logic. In: Margaria, T., Graf, S., Larsen, K. (eds) Models, Mindsets, Meta: The What, the How, and the Why Not?. Lecture Notes in Computer Science(), vol 11200. Springer, Cham. https://doi.org/10.1007/978-3-030-22348-9_18

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-22348-9_18

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-22347-2

  • Online ISBN: 978-3-030-22348-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics