コード例 #1
0
 def filter(self, interval):
     t_infimum = max(interval.infimum, self.num.value)
     t_supremum = interval.supremum
     t = Interval(t_infimum, t_supremum) if t_infimum <= t_supremum else None
     f_infimum = interval.infimum
     f_supremum = min(interval.supremum, self.num.value - 1)
     f = Interval(f_infimum, f_supremum) if f_infimum <= f_supremum else None
     return t, f
コード例 #2
0
    def a_interp(self, env):
        if self.infimum > self.supremum:
            raise ValueError("empty range for '{} ~ {}'".format(self.infimum, self.supremum))

        return Interval(self.infimum, self.supremum)
コード例 #3
0
 def a_interp(self, env):
     return Interval(self.value, self.value)
コード例 #4
0
 def filter(self, interval):
     f_infimum = max(interval.infimum, self.num.value)
     f_supremum = min(interval.supremum, self.num.value)
     f = Interval(f_infimum, f_supremum) if f_infimum <= f_supremum else None
     return interval, f
コード例 #5
0
 def filter(self, interval):
     t_infimum = max(interval.infimum, self.num.value)
     t_supremum = min(interval.supremum, self.num.value)
     t = Interval(t_infimum, t_supremum) if t_infimum <= t_supremum else None
     return t, interval