NLP introduces First Order Predicate Calculus to implementing meaning of our languages, however this method can't completely express the meaning understanded by ourselves because machine has not perception. Rather than human, what the machine percepted is located in higher, more abstract level than reality.(in general, it is FOPC).
Using prediates is intuitional: human-being understand and express this world should begin from 2 statements: 1, A do something on B; 2, A is B. In fact, these 2 statements is predicates. I think all complex languages is derived from them. Wittgenstein describe language by 3 forms: representative form, logical form, reality. Representative form can be viewed as kinds of expression of reality, logical form is mini similarity between representative form and reality. Reality is important, in a manner, reality is meaning.
We try to find a thing close to reality which must has properties: 1, a model of language(more concise); 2, ability of expression(too weak and too complex is prohibited). FOPC is competent but there still is some problems: using verb to be the name of predicates will result in overgeneration. Because a action can take place in a location, time. Its taker can be one thing or many things. These combination overgenerates a series of predicates belong to that predicate.
Reification provides a good solution of which concreting a verb to a 'noun'. This let me remind Wittgenstein's arguments about a predicate love(A,B). In fact, this statement should explained by a way of which 'love B' be a property belong to A, and A is the bearer of that property.
Abstracting action out of its owner in language fall into trap in which predicates concludes language. Reification requires more separation: divide eat into 'eater', 'eaten' and so on. Using more smaller primitive atomic to representing.
IR is coming soon