Fuzzy logic in prolog

I suggest you read it again; skip the theory and start with section 3. The fuzzy logic Prolog library appears to allow you to specify facts with a probability “interval” between 0 and 1 (which could be a single value in the range), and rules with aggregation operators for accumulating the probabilities of the subgoals.

It also appears that all software described in the paper is included with Ciao Prolog; sounds to me like it’s worth a try. (Perhaps it’s portable to SWIP with some effort if there’s a reason for doing that.)

EDIT: see also https://www.cl.uni-heidelberg.de/courses/ws08/logik/seminarslides/10_Knapp.pdf

also a different implementation of fuzzy Prolog: