Logic-based Software Modeling with FOML

Mira Balaban, Igal Khitron, Michael Kifer

Research output: Contribution to journalArticlepeer-review

2 Scopus citations


Models are at the heart of the emerging Model-Based Systems Engineering (MBSE ) approach. MBSE is motivated by the growing complexity of software, which requires multiple levels of abstraction that programming languages do not support. In MBSE, models play a central role in the software evolution process. Rich model management must rely on a unifying underlying formal framework that can support, integrate, and mediate powerful modeling services. This paper describes FOML, a F ramework for Object Modeling with Logic, its realization in a modeling tool, proves the correctness of class modeling in FOML, illustrates the process of software modeling with the tool, and presents the main features of the system. The FOML framework for software modeling is compact yet powerful, formal, and is based on an underlying logic rule language called PathLP. The combination of class-based conceptualization with a formal logical base enables clean mediation and integration of a wide range of modeling activities and provides a provably correct formulation of class models. Our implementation of FOML features seamless integration of multiple modeling services that simultaneously support multiple models and provide reasoning, meta-reasoning, validation, testing, and evolution services.

Original languageEnglish
Pages (from-to)1-21
Number of pages21
JournalJournal of Object Technology
Issue number3
StatePublished - 1 Jan 2020


  • F-Logic
  • OCL
  • UML class diagrams
  • constraints
  • logic programming
  • model theory
  • model transformation
  • objects
  • types

ASJC Scopus subject areas

  • Software


Dive into the research topics of 'Logic-based Software Modeling with FOML'. Together they form a unique fingerprint.

Cite this