First-Order Logic Solver Calculator

Build formulas, inspect variables, convert normal forms, test finite models, unify expressions, and explore bounded proofs with clear, exportable reasoning steps for every query.

Insert a symbol
Predicate rows are tuples. Function maps use joined argument keys, such as a|b.

Formula used

Implication uses the equivalence A → B ≡ ¬A ∨ B. Biconditional becomes two implications. Negations move inward using De Morgan rules.

Finite quantifiers expand across every selected domain element. Resolution searches the grounded clause set. Search limits prevent uncontrolled growth.

How to use

  1. Select a solver mode.
  2. Enter formulas with symbols or keyboard syntax.
  3. Declare constants, variables, and a finite domain.
  4. Provide model JSON for semantic evaluation.
  5. Submit the form and review every reasoning step.

Accepted notation

MeaningSymbol formKeyboard form
Negation¬P(x)!P(x) or not P(x)
ConjunctionP(x) ∧ Q(x)P(x) & Q(x)
DisjunctionP(x) ∨ Q(x)P(x) | Q(x)
ImplicationP(x) → Q(x)P(x) -> Q(x)
BiconditionalP(x) ↔ Q(x)P(x) <-> Q(x)
Universal∀x P(x)forall x P(x)
Existential∃x P(x)exists x P(x)

Example data

ModeInputExpected interpretation
Entailment∀x(Human(x) → Mortal(x)); Human(socrates)Mortal(socrates) follows in the selected grounding.
UnificationKnows(x,father(x)) and Knows(alice,y){x ↦ alice, y ↦ father(alice)}
Transformation¬∀x P(x)∃x ¬P(x)
Equivalence∀x(H(x) → M(x)) and ¬∃x(H(x) ∧ ¬M(x))Equivalent in matching finite models.

Important limitation

General first-order validity is undecidable. A bounded search may stop without finding a proof. That outcome does not establish invalidity.

Finite-model results apply only to the supplied interpretation. Grounded resolution applies only to the selected domain. Review scope notes carefully.

Frequently asked questions

Can this solver decide every first-order formula?

No. General first-order validity is undecidable, so bounded searches may return an unknown result.

Does it support Unicode symbols?

Yes. It accepts common Unicode operators and equivalent keyboard notation.

What is a finite model?

It is a domain with interpretations for constants, predicates, and functions.

How are free variables handled?

Finite-model mode tests every assignment within the selected domain, subject to safety limits.

What does standardised apart mean?

Each bound variable receives a unique name to prevent accidental variable capture.

What does Skolemisation do?

It removes existential quantifiers by introducing fresh constants or functions.

Is the unifier always most general?

The implemented occurs-check algorithm returns a most general unifier for supported first-order terms.

Why can CNF conversion stop?

Distributing disjunctions may grow exponentially, so the calculator enforces a safety limit.

Can I export results?

Yes. You can copy the report, download CSV, or print the page as PDF.

Related Calculators

Average Calculator StatisticsGeometric Mean CalculatorInter Quartile Range CalculatorLower Quartile CalculatorMaximum CalculatorMean Calculator StatisticsMedian Calculator StatisticsMidhinge Calculator StatisticsMid Range Calculator StatisticsMinimum Calculator Statistics

Important Note: All the Calculators listed in this site are for educational purpose only and we do not guarentee the accuracy of results. Please do consult with other sources as well.