code: def refine (self, requirements):
          
          assert isinstance(requirements, PropertySet)
          if requirements not in self.refined_:
              r = property.refine(self.all_, requirements.all_)
  
              self.refined_[requirements] = create(r)
  
          return self.refined_[requirements]
docs: Refines this set's properties using the requirements passed as an argument.