Converting Natural Language Statements to First-Order Logic: “All men are mortal. Socrates is a man.”

Converting Natural Language Statements to First-Order Logic: “All men are mortal. Socrates is a man.”

Verified Sources
Nov 4, 2026

To convert a natural-language sentence into first-order logic (FOL), you (1) choose a domain of discourse, (2) pick predicates for the relevant properties, and (3) use quantifiers (especially ∀\forall for “all”) to match the sentence structure.
For the statements:

  1. “All men are mortal.”
  2. “Socrates is a man.”

A standard FOL setup uses:

  • Domain: all individuals (e.g., people/objects of the relevant universe).
  • Predicates: Man(x)Man(x) and Mortal(x)Mortal(x).
  • Constant: ss (or specifically “Socrates”) to denote the particular individual Socrates.

Then the translation is:

  • “All men are mortal.”       ⇒      ∀x (Man(x)→Mortal(x))\;\;\;\Rightarrow\;\;\; \forall x\,(Man(x)\rightarrow Mortal(x))
  • “Socrates is a man.”       ⇒      Man(s)\;\;\;\Rightarrow\;\;\; Man(s)

This is the typical meaning-preserving formalization: any individual xx that is a man must also be mortal, and Socrates (a specific constant) is asserted to be a man.

Key keyword concepts: predicates, constants, quantifiers, implication.

First-Order Logic (FOL) Translation: Quantifiers and Predicates

Pro Tip: Map grammar to logic

For FOL translations, “all” usually means a universal quantifier 2˘200\u2200, while “is” often becomes either predicate application (e.g., Man(s)Man(s)) or part of an implication (e.g., Man(x)2˘192Mortal(x)Man(x)\u2192Mortal(x)).

Step-by-step FOL conversion for the given statements

  1. 1
    Step 1

    Let the domain be all individuals you are talking about (commonly, all people).

  2. 2
    Step 2

    Use Man(x) for “x is a man” and Mortal(x) for “x is mortal.”

  3. 3
    Step 3

    Let ss be a constant symbol meaning “Socrates.” Then “Socrates is a man” becomes Man(s).

  4. 4
    Step 4

    Use 2˘200x\u2200x to cover all individuals xx. Then “All men are mortal” becomes: Man(x)2˘192Mortal(x)Man(x)\u2192Mortal(x).

  5. 5
    Step 5

    The full set of translations is: 2˘200x (Man(x)2˘192Mortal(x))\u2200x\,(Man(x)\u2192Mortal(x)) and Man(s)Man(s).

Final First-Order Logic (FOL) representation

Let:

  • Man(x)Man(x) = “xx is a man”
  • Mortal(x)Mortal(x) = “xx is mortal”
  • ss = “Socrates” (a constant)

Then:

  1. All men are mortal ∀x (Man(x)→Mortal(x))\forall x\,(Man(x)\rightarrow Mortal(x))

  2. Socrates is a man Man(s)Man(s)

Together (as a set of premises / conjunction), you can write: (∀x (Man(x)→Mortal(x)))∧Man(s)\big(\forall x\,(Man(x)\rightarrow Mortal(x))\big)\wedge Man(s)

Important keyword and keyword use is exactly what matches “all.”

Common mistake: using ∃ instead of ∀

Do not translate “All men are mortal” as 2˘203x(Man(x)2˘227Mortal(x))\u2203x(Man(x)\u2227Mortal(x)). That would mean “there exists a man who is mortal,” which is weaker than “every man is mortal.”

EnglishFOL form
All men are mortal∀x (Man(x)→Mortal(x))\forall x\,(Man(x)\rightarrow Mortal(x))
Socrates is a manMan(s)Man(s)

Translation workflow

Vocabulary

1

Extract predicates and constants: ManMan, MortalMortal, and ss."

Quantifiers

2

Use 2˘200\u2200 for “all”."

Connectives

3

Use →\rightarrow for “All A are B” (A→B)."

Write final formulas

4

Output ∀x(Man(x)→Mortal(x))\forall x(Man(x)\rightarrow Mortal(x)) and Man(s)Man(s)."

Quick checks and edge cases

Knowledge Check

Question 1 of 3
Q1Single choice

Which FOL formula best represents: “All men are mortal.”