autoCode4: Structural Controller Synthesis

  • Chih-Hong ChengEmail author
  • Edward A. Lee
  • Harald Ruess
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10205)


autoCode4 synthesizes structured reactive controllers from realizable specifications in the GXW subset of linear temporal logic (LTL). Generated reactive controllers are expressed in terms of an intermediate synchronous dataflow (SDF) format, which is further translated, using an open interface, into SCADE/Lustre and Ptolemy II. Moreover, autoCode4 generates and maintains a traceability relation between individual requirements and generated code blocks, as mandated by current standards for certifying safety-critical control code.


  1. 1.
    Online training material for PLC programming.
  2. 2.
    CODESYS - Industrial IEC 61131–3 PLC programming framework.
  3. 3.
    Le Berre, D., Parrain, A.: The SAT4J library, release 2.2, system description. J. Satisf. Boolean Model. Comput. 7, 59–64 (2010)Google Scholar
  4. 4.
    Bohy, A., Bruyère, V., Filiot, E., Jin, N., Raskin, J.-F.: Acacia+, a Tool for LTL Synthesis. In: Madhusudan, P., Seshia, S.A. (eds.) CAV 2012. LNCS, vol. 7358, pp. 652–657. Springer, Heidelberg (2012). doi: 10.1007/978-3-642-31424-7_45 CrossRefGoogle Scholar
  5. 5.
    Cheng, C.-H., Hamza, Y., Ruess, H.: Structural synthesis for GXW specifications. In: Chaudhuri, S., Farzan, A. (eds.) CAV 2016. LNCS, vol. 9779, pp. 95–117. Springer, Cham (2016). doi: 10.1007/978-3-319-41528-4_6 Google Scholar
  6. 6.
    Cheng, C.-H., Huang, C.-H., Ruess, H., Stattelmann, S.: G4LTL-ST: automatic generation of PLC programs. In: Biere, A., Bloem, R. (eds.) CAV 2014. LNCS, vol. 8559, pp. 541–549. Springer, Cham (2014). doi: 10.1007/978-3-319-08867-9_36 Google Scholar
  7. 7.
    Ehlers, R.: Unbeast: symbolic bounded synthesis. In: Abdulla, P.A., Leino, K.R.M. (eds.) TACAS 2011. LNCS, vol. 6605, pp. 272–275. Springer, Heidelberg (2011). doi: 10.1007/978-3-642-19835-9_25 CrossRefGoogle Scholar
  8. 8.
    Mavin, A., Wilkinson, P., Harwood, A., Novak, M.: Easy approach to requirements syntax (EARS). In: RE, pp. 317–322. IEEE (2009)Google Scholar
  9. 9.
    Ptolemaeus, C. (ed.): System Design, Modeling, and Simulation using Ptolemy II., Berkeley (2014)Google Scholar
  10. 10.
    Janota, M., Marques-Silva, J.: abstraction-based algorithm for 2QBF. In: Sakallah, K.A., Simon, L. (eds.) SAT 2011. LNCS, vol. 6695, pp. 230–244. Springer, Heidelberg (2011). doi: 10.1007/978-3-642-21581-0_19 CrossRefGoogle Scholar
  11. 11.
    Jobstmann, B., Galler, S., Weiglhofer, M., Bloem, R.: Anzu: a tool for property synthesis. In: Damm, W., Hermanns, H. (eds.) CAV 2007. LNCS, vol. 4590, pp. 258–262. Springer, Heidelberg (2007). doi: 10.1007/978-3-540-73368-3_29 CrossRefGoogle Scholar
  12. 12.
    Lee, E.A., Messerschmitt, D.G.: Synchronous data flow. Proc. IEEE 75(9), 1235–1245 (1987)CrossRefGoogle Scholar
  13. 13.
    Halbwachs, N., Caspi, P., Raymond, P., Pilaud, D.: The synchronous data flow programming language LUSTRE. Proc. IEEE 79(9), 1305–1320 (1987)CrossRefGoogle Scholar
  14. 14.
    Piterman, N., Pnueli, A., Sa’ar, Y.: Synthesis of reactive(1) designs. In: Emerson, E.A., Namjoshi, K.S. (eds.) VMCAI 2006. LNCS, vol. 3855, pp. 364–380. Springer, Heidelberg (2005). doi: 10.1007/11609773_24 CrossRefGoogle Scholar
  15. 15.
    Pnueli, A.: The temporal logic of programs. In: FOCS, pp. 46–57. IEEE (1977)Google Scholar
  16. 16.
    Pnueli, A., Rosner, R.: On the synthesis of a reactive module. In: POPL, pp. 179–190. IEEE (1989)Google Scholar
  17. 17.
    Schewe, S., Finkbeiner, B.: Bounded synthesis. In: Namjoshi, K.S., Yoneda, T., Higashino, T., Okamura, Y. (eds.) ATVA 2007. LNCS, vol. 4762, pp. 474–488. Springer, Heidelberg (2007). doi: 10.1007/978-3-540-75596-8_33 CrossRefGoogle Scholar

Copyright information

© Springer-Verlag GmbH Germany 2017

Authors and Affiliations

  1. 1.fortiss - An-Institut Technische Universität MünchenMunichGermany
  2. 2.EECSUC BerkeleyBerkeleyUSA

Personalised recommendations