public void CalculateHazardWithoutEarlyTermination() { LustreModelChecker.TraversalConfiguration.EnableEarlyTermination = false; var result = LustreModelChecker.CalculateProbabilityToReachStateBounded(Path.Combine(AssemblyDirectory, "pressureTank.lus"), "TANK", _faults, _hazard, 25); LustreModelChecker.TraversalConfiguration.EnableEarlyTermination = true; Console.Write($"Probability of hazard: {result}"); }
public void CalculateHazardSingleCore() { LustreModelChecker.TraversalConfiguration.CpuCount = 1; LustreModelChecker.TraversalConfiguration.EnableEarlyTermination = false; LustreModelChecker.TraversalConfiguration.EnableStaticPruningOptimization = false; var result = LustreModelChecker.CalculateProbabilityToReachStateBounded(Path.Combine(AssemblyDirectory, "pressureTank.lus"), "TANK", _faults, _hazard, 25); LustreModelChecker.TraversalConfiguration.CpuCount = Int32.MaxValue; LustreModelChecker.TraversalConfiguration.EnableEarlyTermination = true; LustreModelChecker.TraversalConfiguration.EnableStaticPruningOptimization = true; Console.Write($"Probability of hazard: {result}"); }