Calculator Input
Example Data Table
| Formula | Domain | Predicate Facts | Expected Result |
|---|---|---|---|
forall x (Human(x) -> Mortal(x)) |
Socrates, Plato, Aristotle | Human has all three. Mortal lacks Aristotle. | False |
exists x (Human(x) & Mortal(x)) |
Socrates, Plato, Aristotle | Socrates and Plato match both predicates. | True |
s = Socrates |
Socrates, Plato | Constant s maps to Socrates. | True |
Formula Used
The calculator uses model checking semantics for first order logic.
A model is treated as M = (D, I).
D is the domain.
I is the interpretation of constants and predicates.
Universal quantification follows this rule:
M, g ⊨ ∀x φ when φ is true for every object assigned to x.
Existential quantification follows this rule:
M, g ⊨ ∃x φ when φ is true for at least one object assigned to x.
Negation reverses truth. Conjunction requires both sides. Disjunction requires at least one side. Implication is false only when the left side is true and the right side is false. Biconditional is true when both sides share the same truth value.
How to Use This Calculator
- Enter a first order logic formula in the formula field.
- Add every object in the domain field.
- Map constants when the formula uses names like
sora. - Add predicate facts using one predicate per line.
- Add optional free variable assignments when needed.
- Set trace and quantifier limits for larger models.
- Press the calculate button to see the truth value.
- Use CSV or PDF buttons to save the result.
Understanding First Order Logic Calculation
Model Checking Basics
First order logic studies statements about objects. It also studies relations between those objects. A calculator cannot prove every possible statement by magic. It needs a model. The model gives a fixed domain. It also gives predicate facts. The calculator then checks the formula against that model. This makes the result clear and repeatable.
Why Quantifiers Matter
Quantifiers are the main feature of first order logic. A universal quantifier checks every object. An existential quantifier searches for at least one match. This difference is important. One missing object can break a universal claim. One matching object can satisfy an existential claim. The trace helps reveal this behavior.
Predicates and Facts
Predicates describe properties and relations. A unary predicate may say that Socrates is human. A binary predicate may say that John is parent of Mary. Each listed fact is treated as true. Missing facts are treated as false. This is a closed fact table approach. It is useful for lessons and quick model checks.
Using Results Carefully
The final result depends on the domain and facts. Changing one fact can change the truth value. Larger domains create more assignments. Nested quantifiers can grow quickly. The calculator includes limits for safety. Use small models for learning. Use the export options for reports. Keep formulas simple when explaining results to students.
Common Syntax Choices
The page accepts plain text operators. This makes formulas easy to type. You can use implication and biconditional symbols. You can also use readable words. Parentheses are strongly recommended. They reduce ambiguity. Clear syntax gives better traces. Better traces make logic errors easier to find.
FAQs
1. What does this calculator evaluate?
It evaluates first order logic formulas against a finite model. The model includes domain objects, constants, and predicate facts.
2. Which quantifiers are supported?
It supports universal and existential quantifiers. You can write them as forall, exists, ∀, or ∃.
3. How are missing predicate facts handled?
Missing predicate facts are treated as false. Listed facts are treated as true within the current model.
4. Can I use binary predicates?
Yes. Enter binary facts like Parent: John|Mary; Mary|Sam. Use the same predicate name in the formula.
5. Does the calculator prove logical validity?
It checks truth in the supplied model. Logical validity across all possible models is a separate proof task.
6. Why should I use parentheses?
Parentheses make operator order clear. They also help avoid errors in implication, conjunction, and disjunction expressions.
7. What are free variables?
Free variables are variables not controlled by a quantifier. The calculator can test sampled assignments for them.
8. Can I export the result?
Yes. Use the CSV button for spreadsheet data. Use the PDF button for a printable summary.