correct lipshitz bound for stl predicates
This commit is contained in:
parent
6489667970
commit
0d4a703dcc
1 changed files with 5 additions and 5 deletions
10
stl/utils.py
10
stl/utils.py
|
|
@ -121,12 +121,12 @@ def from_mtl(phi:MTL, ap_map:Dict[AtomicPred, LinEq]) -> STL:
|
|||
focus = AP_lens(phi)
|
||||
return focus.modify(ap_map.get)
|
||||
|
||||
def _lineq_lipschitz(lineq):
|
||||
return sum(map(abs, lens(lineq).terms.each_().coeff.get_all()))
|
||||
|
||||
def linear_stl_lipschitz(phi):
|
||||
r = max(abs(c) for c in terms_lens(phi).coeff.get_all())
|
||||
try:
|
||||
return float(r)
|
||||
except TypeError:
|
||||
return r
|
||||
"""Infinity norm lipschitz bound of linear inequality predicate."""
|
||||
return float(max(map(_lineq_lipschitz, lineq_lens(phi).get_all())))
|
||||
|
||||
# EDSL
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue