code: def get_implicit_constraints(self,relations):
          ''' An implicit constraint is one in which you are unifying a constant to a position of the relation
              E.G. R(X,2) specifies that R.2 == 2'''
  
          constraints = []
          for relation in [r for r in relations if not r.is_negated()]  :
              const_dict = relation.get_constants()
              for constant in const_dict:
                  for position in const_dict[constant]:
                      constraints.append( \
                          relation.get_name() + '.' + self.mapPositionToColumnName(relation,position) + ' = ' + str(constant) \
                      )
          return constraintf get_implicit_constraints(self,relations):
          ''' An implicit constraint is one in which you are unifying a constant to a position of the relation
              E.G. R(X,2) specifies that R.2 == 2'''
  
          constraints = []
          for relation in [r for r in relations if not r.is_negated()]  :
              const_dict = relation.get_constants()
              for constant in const_dict:
                  for position in const_dict[constant]:
                      constraints.append( \
                          relation.get_name() + '.' + self.mapPositionToColumnName(relation,position) + ' = ' + str(constant) \
                      )
          return constraints
docs: An implicit constraint is one in which you are unifying a constant to a position of the relation
              E.G. R(X,2) specifies that R.2 == 2