[semidet]assert_predicate_options(:PI,
+Arg, +Options, ?New)As predicate_options(:PI, +Arg, +Options). New
is a boolean indicating whether the declarations have changed. If New
is provided and false
, the predicate becomes semidet and
fails without modifications if modifications are required.