Current scope: arg2p| all classes
|
it.unibo.tuprolog.argumentation.core.modules.labelling.statement
Coverage Summary for Class: StatementBinaryModule (it.unibo.tuprolog.argumentation.core.modules.labelling.statement)
| Class | Class, % | Method, % | Branch, % | Line, % | Instruction, % |
|---|---|---|---|---|---|
| StatementBinaryModule | 100% (1/1) | 100% (3/3) | 100% (3/3) | 100% (7/7) |
package it.unibo.tuprolog.argumentation.core.modules.labelling.statement
import it.unibo.tuprolog.argumentation.core.modules.PrologModule
/**
* Two labels for the statements (module `statement_binary`, a statementLabellingMode): IN if an argument for the
* statement is IN, OUT otherwise.
*/
object StatementBinaryModule : PrologModule("prolog.argumentation.graph.labelling.statement.binary", "statement_binary") {
override val prologRawTheory: String =
// language=Prolog
"""
%! statementLabelling
% The labels of the statements (see graphStore::labelStatement/2): IN those with an argument IN, OUT the others
% (their arguments are OUT or UND).
statementLabelling :-
findall(_, (
argument::conclusion(A, Conc),
graphStore::argumentLabel(in, A),
\+ graphStore::statementLabel(in, Conc),
graphStore::labelStatement(in, Conc)
), _),
findall(_, (
argument::conclusion(A, Conc),
(graphStore::argumentLabel(out, A) ; graphStore::argumentLabel(und, A)),
\+ graphStore::statementLabel(in, Conc),
\+ graphStore::statementLabel(out, Conc),
graphStore::labelStatement(out, Conc)
), _).
""".trimIndent()
}