Class LiabilityAllocator

java.lang.Object
org.episteme.social.law.LiabilityAllocator

public final class LiabilityAllocator extends Object
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)
  • 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 distributed
      parties - 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

      public static Real jointAndSeveralOutcome(double totalDamage, double maxSolventCapacity)
      Calculates the outcome for a party under the Joint and Several Liability rule, limited by their solvent capacity.
      Parameters:
      totalDamage - the total damages awarded
      maxSolventCapacity - the maximum amount the party can pay
      Returns:
      the resulting damage amount as a Real number