Abstract

AbstractIn this paper we investigate the shift from two-valued to many-valued logic programming, including extensions involving functorial and monadic constructions for sentences building upon terms. We will show that assigning uncertainty is far from trivial, and the place where uncertainty should be used is also not always clear. There are a number of options, including the use of composed monads, and replacing the underlying category for monads with categories capturing uncertainty in a more canonic way. This is indeed important concerning terms and sentences, as classic logic programming, and also predicate logic for that matter, is not all that clear about the distinctive characters of terms and sentences. Classically, they are sets, and in our approach they are categorical objects subject to being transformed e.g. by transformations between functors. Naive set-theoretic approaches, when dealing e.g. with ‘sets of sentences’ and ‘sets of ground atoms’, may easily lead to confusion and undesirable constructions if generalizations are performed only as a shift from ‘set’ to ‘fuzzy set’. We present some basic results on how adaptation of a strictly categorical framework enables us to be very precise about the distinction between terms and sentences, where predicates symbols become part of a signature which is kept apart from the signature for terms. Implication will not be included in signatures, but appears integrated into our sentence functors. Doing so we are able to relate propositional logic to predicate logic in a more natural way. Integration of uncertainty then becomes much more transparent.KeywordsFuzzy logic programmingfuzzy termsfuzzy sentences

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call