PublicShow sourcemodules.pl -- Encode modules

The sCASP program representation and solver are not module aware. We solve this by encoding the module in the functor names. The alternative is to make the solver and program representation work with M:Term terms.

This current approach implies overhead in program preparation and returning results, but avoids overhead in the compilation and solving. As notably the solver is the slow part it is likely that interning the module into the names is both simpler and faster.

Source encoded_module_term(?TermIn, ?TermOut) is det
Source scasp_encoded_module_term(?MTerm, ?QTerm) is det
Map an explicit Prolog module qualification into one that is encoded in the functor name.
Source unqualify_model_term(+Module, +TermIn, -TermOut)
Source model_term_module(:Term, -Module) is det