Soggy Predicates
Warning: I suggest to either directly use the subset notation (see below) or introduce a SoggyLink to turn any predicate into a soggy predicate where the domain of that soggy predicate is and only the powerset of the domain the given predicate. Automatically extending the domain of a predicate to its powerset leads to bad foundations.
A Simple Observation Grounded predicate, or Soggy predicate, is an uncertain predicate F so that: For each x, the number F(x) lies in [0,1] and can be interpreted as the average degree to which an arbitrary element of some set O of observations has property F. (Here we assume that the degree to which a specific observation has a property F is itself a number in [0,1])
(Note that the set of observations O need not be the observations actually made by the AI system whose memory contains the predicate — it may be observations made by some other hypothesized entities, etc.)
In this case we have a clear interpretation for
EvaluationLink <s> PredicateNode F Atom x
So we can say
PredicateNode F <t>
means the average degree to which an arbitrary element y of the AI system’s “default set of observations” satisfies F (i.e. the average over this default observation-set of F(y))…
Or, for an observation-set C, we can say
ContextLink <t1> ConceptNode C PredicateNode F
where t1 is the average over F(y), where y is counted in the average with a weight proportional to the degree to which y is in C.
So then
PredicateNode F <t>
means, conceptually,
ContextLink <t> >default context< PredicateNode F
Next, we can then define
EvaluationLink <s> PredicateNode F Atom x
as being equivalent to
MemberLink <s> Atom x SatisfyingSet PredicateNode F
Basically, this is just defining the membership function of the fuzzy set
SatisfyingSet PredicateNode F
in a particular way.
We can then convert this to
Subset <s> Atom x SatisfyingSet PredicateNode F
because of the way F was originally defined.
This becomes a bit subtle to interpret in the case that the argument of F is a list.
For example,
EvaluationLink <s> PredicateNode “eat” ListLink ConceptNode “cat” ConceptNode “mouse”
converts to
SubsetLink <s> ListLink ConceptNode “cat” ConceptNode “mouse” SatisfyingSet ConceptNode “eat”
which means that s is the average degree to which an observation (in the default overall observation-set) involving “eat”, also involves the pair (eater = cat, eatee=mouse).
Interpretation in terms of Multisets
One way to phrase the above interpretation is to introduce the multiset interpretation of fuzzy membership degrees from
https://pdfs.semanticscholar.org/c18f/ba07ba1dbb99700391df30f6ca8798e5df9f.pdf
and to associate F with a multiset , in which an entity has copies, where this number of copies is then proportional to the degree to which has property . If we assume the degrees of membership of are of the form , then means has degree .
Suppose is Soggy, and has been observed times, and of these observations have fully manifested property , and the other observations have manifested not at all. Then in the multiset interpretation, we can set
More generally we have
where is the i’th observation of x, and is the degree to which manifests .
This multiset interpretation has the advantage of
- presenting fuzzy degrees as probabilities (across multisets rather than ordinary sets
- providing a formal justification for the use of fuzzy set (min/max) algebra