operator: sexp

    description:
        sexp[op] seq
        the sequence version of exp
        and the inverse of explain[op]

    examples:
        -- given this knowledge:
        cause |p> => |g> . |m> . |r>
        cause |t> => |p> . |p>
        cause |x> => |p> . |g>
        cause |z> => |r> . |p>

        -- find possible causes for: |g> . |m> . |r> . |g> . |m> . |r>
        explain[cause] ssplit[" . "] |g . m . r . g . m . r>
            t
            p . p
            g . m . z
            x . m . r
            g . m . r . p
            p . g . m . r
            g . m . r . g . m . r
        
        -- now use sexp to verify they all work:
        sexp[cause] |t>
            |g> . |m> . |r> . |g> . |m> . |r>
            
        sexp[cause] (|p> . |p>)
            |g> . |m> . |r> . |g> . |m> . |r>
            
        sexp[cause] (|g> . |m> . |z>)
            |g> . |m> . |r> . |g> . |m> . |r>
            
        sexp[cause] (|x> . |m> . |r>)
            |g> . |m> . |r> . |g> . |m> . |r>
            
        sexp[cause] (|g> . |m> . |r> . |p>)
            |g> . |m> . |r> . |g> . |m> . |r>
            
        sexp[cause] (|p> . |g> . |m> . |r>)
            |g> . |m> . |r> . |g> . |m> . |r>

    see also:
        exp, explain

Home