Class LiabilityAllocator
java.lang.Object
org.episteme.social.law.LiabilityAllocator
Provides algorithms for allocating liability and damages in multi-party legal disputes.
Supports comparative negligence and joint and several liability models.
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordRepresents a party involved in litigation with their assigned fault and damages. -
Method Summary
Modifier and TypeMethodDescriptiondistributeLiability(double totalDamage, List<LiabilityAllocator.Party> parties) Distributes total damages among parties based on their fault ratios (Comparative Negligence).static RealjointAndSeveralOutcome(double totalDamage, double maxSolventCapacity) Calculates the outcome for a party under the Joint and Several Liability rule, limited by their solvent capacity.
-
Method Details
-
distributeLiability
public static Map<String,Real> distributeLiability(double totalDamage, List<LiabilityAllocator.Party> parties) Distributes total damages among parties based on their fault ratios (Comparative Negligence).- Parameters:
totalDamage- the total amount of damages to be distributedparties- the list of parties involved- Returns:
- a map where the key is the party name and the value is the assigned liability as a Real number
-
jointAndSeveralOutcome
Calculates the outcome for a party under the Joint and Several Liability rule, limited by their solvent capacity.- Parameters:
totalDamage- the total damages awardedmaxSolventCapacity- the maximum amount the party can pay- Returns:
- the resulting damage amount as a Real number
-