Beispiel #1
0
 def isPartialInteger(self):
     for e in self.domain():
         if (isinstance(e, BInteger)):
             return BBoolean(True)
         else:
             return BBoolean(False)
     return BBoolean(True)
Beispiel #2
0
 def checkRangeInteger(self):
     for e in self._range():
         if isinstance(e, BInteger):
             return BBoolean(True)
         else:
             return BBoolean(False)
     return BBoolean(True)
Beispiel #3
0
 def checkDomainInteger(self):
     for e in self.domain():
         if isinstance(e, BInteger):
             return BBoolean(True)
         else:
             return BBoolean(False)
     return BBoolean(True)
Beispiel #4
0
    def notElementOf(self, obj: 'BTuple') -> 'BBoolean':
        prj1 = obj.projection1()
        prj2 = obj.projection2()

        domain = self.map

        if prj1 not in domain:
            return BBoolean(True)

        return BBoolean(prj2 not in domain[prj1])
Beispiel #5
0
 def isInjection(self) -> 'BBoolean':
     visited = set()
     for element in self.domain():
         _range = self.map[element]
         for e in _range:
             range_element = e
             if range_element in visited:
                 return BBoolean(False)
             visited = visited.union([range_element])
     return BBoolean(True)
Beispiel #6
0
 def isInjection(self) -> 'BBoolean':
     visited = immutables.Map()
     for element in self.domain():
         _range = self.map[element]
         for e in _range:
             range_element = e
             if range_element in visited:
                 return BBoolean(False)
             visited = visited.set(range_element, range_element)
     return BBoolean(True)
Beispiel #7
0
    def notElementOf(self, obj: 'BTuple') -> 'BBoolean':
        prj1 = obj.projection1()
        prj2 = obj.projection2()

        domain = self.map.keys()

        if prj1 not in domain:
            return BBoolean(True)

        _range = self.map[prj1]

        return BBoolean(prj2 not in _range)
Beispiel #8
0
    def elementOf(self, obj: 'BTuple') -> 'BBoolean':
        prj1 = obj.projection1()
        prj2 = obj.projection2()

        domain = self.map

        if prj1 not in domain:
            return BBoolean(False)

        _range = self.map[prj1]

        return BBoolean(prj2 in _range)
Beispiel #9
0
 def checkRangeNatural1(self):
     for e in self._range():
         if isinstance(e, BInteger) and not e.isNatural1().booleanValue():
             return BBoolean(False)
     return BBoolean(True)
Beispiel #10
0
 def isNotInteger(self) -> 'BBoolean':
     return BBoolean(false)
Beispiel #11
0
 def greaterEqual(self, other: 'BInteger') -> 'BBoolean':
     return BBoolean(self.__value >= other.__value)
Beispiel #12
0
 def isBijectionNatural1(self) -> 'BBoolean':
     return BBoolean(False)
Beispiel #13
0
 def isSurjectionNatural(self) -> 'BBoolean':
     return BBoolean(False)
Beispiel #14
0
 def isRelation(self) -> 'BBoolean':
     return BBoolean(True)
Beispiel #15
0
 def lessEqual(self, other: 'BInteger') -> 'BBoolean':
     return BBoolean(self.__value <= other.__value)
Beispiel #16
0
 def isTotalStruct(self) -> 'BBoolean':
     return BBoolean(False)
Beispiel #17
0
 def isTotalNatural1(self) -> 'BBoolean':
     return BBoolean(False)
Beispiel #18
0
 def isTotalInteger(self) -> 'BBoolean':
     return BBoolean(False)
Beispiel #19
0
 def unequal(self, other: 'BRelation') -> 'BBoolean':
     return BBoolean(not self.equals(other))
Beispiel #20
0
 def checkRangeString(self):
     for e in self._range():
         if isinstance(e, BString) and not e.isString().booleanValue():
             return BBoolean(False)
     return BBoolean(True)
Beispiel #21
0
 def checkRangeStruct(self) -> 'BBoolean':
     for e in self._range():
         if isinstance(e, BStruct) and not e.isRecord().booleanValue():
             return BBoolean(False)
     return BBoolean(True)
Beispiel #22
0
 def isPartialNatural1(self):
     for e in self.domain():
         if isinstance(e, BInteger) and not e.isNatural1().booleanValue():
             return BBoolean(False)
     return BBoolean(True)
Beispiel #23
0
 def isFunction(self) -> 'BBoolean':
     for element in self.domain():
         _range = self.map[element]
         if _range.size() > 1:
             return BBoolean(False)
     return BBoolean(True)
Beispiel #24
0
 def isPartialString(self):
     for e in self.domain():
         if isinstance(e, BString) and not e.isString().booleanValue():
             return BBoolean(False)
     return BBoolean(True)
Beispiel #25
0
 def isSurjectionString(self) -> 'BBoolean':
     return BBoolean(False)
Beispiel #26
0
 def checkDomainNatural(self):
     for e in self.domain():
         if isinstance(e, BInteger) and not e.isNatural().booleanValue():
             return BBoolean(False)
     return BBoolean(True)
Beispiel #27
0
 def isBijectionInteger(self) -> 'BBoolean':
     return BBoolean(False)
Beispiel #28
0
 def checkDomainStruct(self):
     for e in self.domain():
         if isinstance(e, BStruct) and not e.isRecord().booleanValue():
             return BBoolean(False)
     return BBoolean(True)
Beispiel #29
0
 def isBijectionStruct(self) -> 'BBoolean':
     return BBoolean(False)
Beispiel #30
0
 def unequal(self, other: 'BInteger') -> 'BBoolean':
     return BBoolean(self.__value != other.__value)