code: def minimum(rule, artifact):
      
      m = 1.0
      for i in range(len(rule.R)):
          e = rule.R[i](artifact)
          if e is not None:
              if e < m:
                  m = e
      return m
docs: Evaluate artifact's value to be minimum of values returned by rule's
      subrules.
  
      This evaluation function ignores subrule weights.