Crate scalop

Crate scalop 

Source
Expand description

Scalop is a solver designed for reasoning with argumentation frameworks, including abstract argumentation and assumption-based argumentation tasks. It was formerly named Crustabri.

This library provides datastructures and functions used to handle argumentation frameworks and to execute queries on them. Take a look at the example below to get an overview, and browse this documentation to see its capabilities.

§Example

let labels = vec!["a", "b", "c"];
let arguments = ArgumentSet::new_with_labels(&labels);
let mut framework = AAFramework::new_with_argument_set(arguments);
framework.new_attack(&labels[0], &labels[1]);
let mut solver = StableSemanticsSolver::new(&framework);
let opt_ext = solver.compute_one_extension();
if let Some(ext) = opt_ext {
    println!("found an extension: {:?}", ext);
} else {
    println!("the problem has no stable extension");
}

Modules§

aa
This module contains the main material used to define Abstract Argumentation frameworks and their related problems.
aba
This module contains the main material used to define ABA frameworks and their related problems.
dynamics
Specs and solvers dedicated to dynamic argumentation frameworks.
encodings
Objects used to encode semantics into SAT solvers.
io
Objects used to read and write Argumentation frameworks and answers to problems.
sat
SAT solver interfaces for Abstract Argumentation solvers.
solvers
Solvers dedicated to problems related to Abstract Argumentation frameworks.
utils
Miscellaneous components used in the library.