top | item 39967666

(no title)

rwl | 1 year ago

The distinction between "first order" and "second order" is in the first instance a distinction at the level of formal languages. A second order language has more complicated syntax and semantics: it allows variables in predicate position, which (in the standard semantics) take values from the entire powerset of the underlying domain.

This makes second order languages, including the language of arithmetic, much more expressive: they can distinguish models that first order languages can't. Those infinitely many non-isomorphic models of arithmetic expressed in a first order language can be distinguished, and excluded, as models of arithmetic expressed in a second order language. That's why second order arithmetic is categorical: all of its models are isomorphic.

Yes, a model of second order arithmetic contains a model of first order arithmetic, but within the second order language, you can say "which model it is" (up to isomorphism). It's only if you restrict yourself to a first order language that you can no longer say anything which will be true in that model, but false in any non-isomorphic one.

discuss

order

No comments yet.