Yesterday, after Will Sobel's fascinating talk [0], JFS once again urged everyone to use FOL. Will said (my interpretation) that no one is against it; just provide a suitable tool for practical tasks.
I asked Deepseek about it and received a helpful answer [1].
It's worth looking into the applicability of the mentioned tools to the needs of formal ontologies.
Alex
[0] https://ontologforum.com/index.php/ConferenceCall_2026_04_29
[1] https://chat.deepseek.com/share/ht7cgofjuq7vo0xxob
Here's the translation of our exchange:
**My question:**
"Are there any applied, non-academic projects where FOL is used for knowledge formalization?"
**Your answer:**
Yes, such projects exist, and first-order logic (FOL) in them is not just theory but a working tool for critically important systems. Its areas of application range from verifying train safety to configuring insurance products.
Here are several striking examples from different industries:
* **🏭 Industrial Automation Systems**: The **ISO 18629 (PSL)** standard is based on first-order logic and is used for the unambiguous description and integration of manufacturing processes.
* **🚆 Railway Safety**: The **B-Method** is a formal method actively used in the railway industry to create safety-critical software. It is based on first-order logic and set theory. For automated proof of correctness of such code in the B-Method, the **Zenon** tool is used — an automated theorem prover based on first-order logic.
* **⚖️ Knowledge Management and Configuration**: The **Logic.Tools** platform helps companies, including an insurance company in France and railway operators in Belgium, to create applications based on semantic web technologies. To describe business logic, which is then directly executed, the **OWL** and **SWRL** languages are used, which are based on first-order logic (description logics).
* **⚙️ Interactive Configurators**: The **IDP-Z3** engine is used to create configurators for complex products or services. It works with the **FO(.)** (FO-dot) knowledge representation language, which is a direct extension of first-order logic.
These examples clearly demonstrate that FOL is successfully applied for knowledge formalization in the real world. If you are interested in a specific example or industry, I can find more detailed information.
You know I am a fan of HOL, as (PDF) English is a HOL language message #1X
So I asked Deepseek the next question and got a very interesting answer:
Here’s the translation of our latest exchange:
---
**My question:**
"What can be said about the application of HOL? After all, commonly used formal languages have capabilities that go beyond FOL."
**Your answer:**
Your observation that many formal languages in practice go beyond the capabilities of first-order logic (FOL) is absolutely correct. Higher-Order Logic (HOL) is indeed actively used in industry, especially in tasks that demand exceptionally high reliability and where the expressiveness of FOL proves insufficient. Its main advantage is the ability to treat functions as objects, pass them as arguments, and quantify over predicates.
Here are several specific examples of applied use of HOL, demonstrating a wide range of tasks, from cloud computing to finance.
### 🛡️ Formal Verification of Critical Software and Hardware
This is perhaps the most well-known and important area of HOL application in industry. When the cost of an error in software or hardware is unacceptably high, mathematical proof of correctness, often based on HOL, comes to the rescue.
* **Amazon's Cloud Hypervisor**: One of the most prominent and recent examples is the **AWS Nitro Isolation Engine**. This is a key security component that isolates the data and computations of different customers on a single physical server. For its formal verification, Amazon engineers used the **Isabelle/HOL** proof assistant. This made it possible to create a rigorous mathematical proof that guarantees the functional correctness and reliability of the isolation, ruling out design-level errors. This proof, consisting of 260,000 lines of machine-checkable code, became the world's first for a cloud hypervisor.
* **Verification of Algorithms at Intel**: Intel has been using interactive theorem provers for many years, in particular **HOL Light**, for the formal verification of floating-point algorithms (division, square root extraction, transcendental functions). This is critically important for ensuring the correctness of computations in processors and preventing notoriously famous errors like the "Pentium FDIV bug".
* **System Reliability Analysis**: There is also a whole field of applying HOL (for example, using the **HOL4** system) to conduct not just testing, but formal reliability analysis of complex engineering systems. Unlike simulations, which only check a subset of possible states, theorem provers allow for exhaustive analysis of models such as Reliability Block Diagrams and Event Trees.
### ⚙️ Intelligent Industrial Systems
Another direction where HOL is finding increasingly active application is the creation of systems capable of reasoning, configuring, and solving complex tasks.
* **"Intelligent" Configurator**: The **Imandra** system uses computational higher-order logic (based on a subset of the OCaml language) and is applied to solve tasks with a high degree of complexity. For example, financial giant **Goldman Sachs** has publicly stated that it uses Imandra for designing and auditing its most complex trading algorithms.
* **Working with Knowledge Graphs**: Systems are being developed that attempt to use the expressiveness of HOL for reasoning over knowledge graphs. An example is **ULKB Logic** — an open-source Python framework that provides an interactive environment for representing common sense and linguistic knowledge using a language similar to HOL Light.
* **Upper-Level Ontologies**: The standard Suggested Upper Merged Ontology (**SUMO**), which is used for information integration in various systems, is originally described in the **SUO-KIF** language, which is a higher-order logic.
### 🧠 Industrial Automation and "Enterprise 2.0"
* **EnterpriseWeb**: This company directly uses higher-order logic, types, and functions to create real-time systems that enable enterprise automation and network process management at a new level of flexibility and reliability.
### 🤔 So Why Isn't HOL Used Everywhere?
It is important to understand the cost of such power:
* **High Complexity**: Working with theorem provers (Isabelle/HOL, HOL Light) requires very high qualifications and is an extremely labor-intensive process.
* **Computational Complexity**: Proving theorems in higher-order logic is algorithmically much more complex, and automatic decision procedures for it are, in general, impossible.
* **Niche Application**: Due to these limitations, HOL is not used everywhere but mainly where the risks and cost of an error outweigh the labor costs of formal proof.
Thus, if FOL dominates where there is a need for automated reasoning and a good balance between expressiveness and computational complexity, HOL is the "heavy artillery" deployed when the stakes are at their highest and an impeccable mathematical guarantee of correctness is required — one that cannot be obtained by other means.
If any of these areas or tools particularly interest you, I can provide more detailed information.
--
All contributions to this forum are covered by an open-source license.
For information about the wiki, the license, and how to subscribe or
unsubscribe to the forum, see http://ontologforum.org/info
---
You received this message because you are subscribed to the Google Groups "ontolog-forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ontolog-foru...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/ontolog-forum/a22fefc1-f89e-4b57-ac67-b32e4badba39n%40googlegroups.com.
Here for convenience we summarize all features we need to define OWL 2 operators in HOL.
sorts. We need 2 sorts embedded in the HOL-language:
d - literals of the form LV^^DT [DS], for example "1"^^xsd:integer. Sort d is populated by literals.
Nat - natural numbers.
We declare sort o to keep OWL2-objects:
Declaration o sort.
operators - functions from/to predicates and functions.
predicators - predicate from predicates and functions.
definitions for constants, functions, predicates.
# - quantifier for quantity.To view this discussion visit https://groups.google.com/d/msgid/ontolog-forum/CANTuYBu4_HCtpehhQOKhg_S-jW3y_qYD87PKxwgoMTmJw%3DhqqA%40mail.gmail.com.
To view this discussion visit https://groups.google.com/d/msgid/ontolog-forum/CANTuYBtSmiCL_Y5avjS6F5L9e_gYN%2BycOYqdRVJGhyyexG8XeA%40mail.gmail.com.
--
All contributions to this forum are covered by an open-source license.
For information about the wiki, the license, and how to subscribe or
unsubscribe to the forum, see http://ontologforum.org/info
---
You received this message because you are subscribed to the Google Groups "ontolog-forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ontolog-foru...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/ontolog-forum/CAFxxROQi61hdp%2BFAR0iBr-iVLjL4_UR8Njf9hdtkiDnnHqOpMg%40mail.gmail.com.
Hi Jans,
I'd be interested in learning more about your project.
What theories are you interested in?
On the one hand, FOL, CL sometimes appears in OWL2 ontology annotations. You could try searching OWL2 ontology repositories.
On the other hand, provers (Isabelle, Rocq, Lean4, etc.) have many mathematical theories, and sometimes even physical ones.
Take Geocoq, for example.
What kind of knowledge processing can be done in your CL implementation?
For example, compared to the capabilities provided by the reasoner in Protege?
Do you have an OWL2 to CL converter?
Do you have examples of the expressive power of CL?
But the main question is: what kind of knowledge processing can be performed by formalizing it in CL?
Alex
P.S. I asked Deepseek: `Jans wrote "I have implemented an experimental Common Logic / CLIF layer for AllegroGraph, using a combination of Prolog and Lisp. I am now looking for more substantial test cases to stress-test the implementation." can you help him?`
The answer may be interesting https://chat.deepseek.com/share/qpfcq1ex8cdj3maehg
To view this discussion visit https://groups.google.com/d/msgid/ontolog-forum/CABd59doT2RQQ%2BBLN01imy6eUK9v__X-Lke57pB%2BcvqJNszyDpw%40mail.gmail.com.
To view this discussion visit https://groups.google.com/d/msgid/ontolog-forum/CABd59doT2RQQ%2BBLN01imy6eUK9v__X-Lke57pB%2BcvqJNszyDpw%40mail.gmail.com.
To view this discussion visit https://groups.google.com/d/msgid/ontolog-forum/CAFxxROS29zWQkpzLUnOSNPPCiVC80MKfTU%3DT71CKFmwqd3ebsg%40mail.gmail.com.