Expand description
§argumentation-weighted
Weighted argumentation frameworks (Dunne, Hunter, McBurney, Parsons
& Wooldridge 2011) built on top of the argumentation crate’s
Dung semantics.
A weighted framework attaches an f64 weight to each attack edge.
Under the inconsistency-budget semantics of Dunne et al., a
budget β permits attacks whose cumulative weight is at most β
to be tolerated for the purposes of computing Dung extensions. The
budget acts as a single knob: β = 0 runs standard Dung semantics
over every attack; increasing β progressively tolerates more
attacks and accepts more arguments.
§Quick example
use argumentation_weighted::framework::WeightedFramework;
use argumentation_weighted::sweep::min_budget_for_credulous;
let mut wf = WeightedFramework::new();
wf.add_weighted_attack("attacker", "target", 0.6).unwrap();
// At what budget does `target` become accepted?
let min = min_budget_for_credulous(&wf, &"target").unwrap();
assert_eq!(min, Some(0.6));§Semantics
Implements the inconsistency-budget semantics of Dunne et al.
2011 via exact subset enumeration: a budget β permits any subset
S of attacks whose cumulative weight is at most β to be
tolerated, and an argument is accepted at β iff it is accepted in
the Dung sense on some (credulous) or all (skeptical) of the
resulting residual frameworks. Enumeration is O(2^m) in the number
of attacks m; see reduce::ATTACK_ENUMERATION_LIMIT for the
guard.
§References
- Dunne, P. E., Hunter, A., McBurney, P., Parsons, S., & Wooldridge, M. (2011). Weighted argument systems: Basic definitions, algorithms, and complexity results. Artificial Intelligence 175(2).
- Bistarelli, S., Rossi, F., & Santini, F. (2018). A collective defence against grouped attacks for weighted abstract argumentation frameworks. IJAR 92.
- Coste-Marquis, S. et al. (2012). Weighted attacks in argumentation frameworks. KR 2012.
Re-exports§
pub use error::Error;pub use framework::WeightedFramework;pub use reduce::ATTACK_ENUMERATION_LIMIT;pub use reduce::dunne_residuals;pub use semantics::complete_at_budget;pub use semantics::grounded_at_budget;pub use semantics::is_credulously_accepted_at;pub use semantics::is_skeptically_accepted_at;pub use semantics::preferred_at_budget;pub use semantics::stable_at_budget;pub use sweep::AcceptanceMode;pub use sweep::SweepPoint;pub use sweep::acceptance_trajectory;pub use sweep::flip_points;pub use sweep::min_budget_for_credulous;pub use types::AttackWeight;pub use types::Budget;pub use types::WeightedAttack;pub use weight_source::ClosureWeightSource;pub use weight_source::WeightSource;pub use weight_source::populate_from_source;
Modules§
- error
- Crate error types.
- framework
WeightedFramework<A>: arguments and weighted attack edges.- reduce
- Dunne 2011 β-inconsistent residual enumeration.
- semantics
- β-acceptance under Dunne 2011 inconsistency-budget semantics.
- sweep
- Threshold-sweep API: compute acceptance trajectories for one argument across the full budget range.
- types
- Foundational types for weighted argumentation.
- weight_
source WeightSourcetrait for computing attack weights from external state (relationship metadata, personality traits, etc.).