2
$\begingroup$

In my lecture notes for Discrete Structures, the professor introduced a definition on functors in the "Syntax of Predicate Logic" section.

Definition of functors: Let us consider a collection of symbols called functors (each functor is associated to a natural number n, called its valence or arity, we say that the functor is n-ary). The 0-ary functors are called constants. Let us consider a collection of symbols called variables. Let us consider the two parenthesis symbols ( and ) and the comma symbol ,.

Can anyone tell me what is the intrinsic difference between functors and predicates?

Thanks.

2 Answers 2

4

An n-ary functor is an object which accepts as input an n-tuple from the domain in question and delivers as output a 1-tuple of the domain in question. An n-ary predicate is an object which accepts as input an n-tuple from the domain in question and delivers as output a 1 or 0 (true or false respectively).

  • 0
    The comment should have read: That seems to confuse functors (function symbols) with functions, and predicates with relations. It is relations which "accept objects", while predicates are symbols which get concatenated with terms to form wffs: predicates have relations as their semantic values. Likewise functors are symbolic entities, certainly in the usage of the quoted notes, which have functions as their semantic values2015-03-21
3

Functors correspond with functions and predicates correspond with relations. A n-ary functor supplied with n arguments is a name. A n-ary predicate supplied with n arguments is a sentence.