- 7.1k Downloads
Plain predicate logic is called “first-order logic”, as it allows us to handle objects of structure, and to quantify over them. One might just as well allow quantification over subsets of structures. In that case we speak of a “second-order logic”, which is a logic with two kinds of quantifiers: ∀x and ∀X. The accompanying second-order structure has a domain of elements and one of subsets, which does not necessarily comprise all subsets. For these generalized structures a completeness theorem is proved, which fails for full structures, where quantifiers range over all subsets. The success of treating second-order logic is based on treating the second-order structures as somewhat dressed up first-order structures (there are two kinds of elements, ordinary ones and others that we call “sets”).