fact: Definition mutate_rule n (r : AllowModify n) : list (AllowModify n) := let a := allow r in let res := labRes r in let pc := labResPC r in (List.map (fun a' => almod a' res pc) (mutate_scond a)) ++ (match res with | Some lres => List.map (fun lres' => almod a (Some lres') pc) (mutate_expr lres) | None => [] end) ++ (List.map (fun pc' => almod a res pc') (mutate_expr pc)).
imports: QuickChick.ifcbasic(Rules Machine) List