I do not agree with the decision of Mr. B., I would prefer that you change your implementation, which seems like a very banal way of handling things:
scala> val SetOfDigits = Set((0,2,3),(1,5,6),(7,10,2),(1,2,5))
SetOfDigits: scala.collection.immutable.Set[(Int, Int, Int)] = Set((0,2,3), (1,5,6), (7,10,2), (1,2,5))
scala> SetOfDigits.contains((1, 2, 5))
res0: Boolean = true
scala> SetOfDigits.contains((1, 2, 4))
res1: Boolean = false
contains , , false, , .
, forAll contains:
scala> val setOfDigits1 = Set((0,2,3),(1,5,6),(7,10,2),(1,2,5)).flatMap { case(a,b,c) => Set(a,b,c)}
setOfDigits1: scala.collection.immutable.Set[Int] = Set(0, 5, 10, 1, 6, 2, 7, 3)
scala> val setOfDigits2 = Set(1,2,3,16,20,7)
setOfDigits2: scala.collection.immutable.Set[Int] = Set(20, 1, 2, 7, 3, 16)
scala> val setOfDigits3 = Set(1,2,3,10)
setOfDigits3: scala.collection.immutable.Set[Int] = Set(1, 2, 3, 10)
scala> setOfDigits2.forall(i => setOfDigits1.contains(i))
res8: Boolean = false
scala> setOfDigits3.forall(i => setOfDigits1.contains(i))
res9: Boolean = true
, List[(Int, Int, Int)] List[Int], forAll , , contains .