How to write a multi-line set builder?

Disclaimer: This solution is equivalent to the one by @aarnent. He was just ~1 minute faster :cry:
You can use math.cases() to get the multiple lines. And then you just wrap everything in curly brackets. Note that you have to use sym.comma (or \,) since the regular comma will be interpreted as a new case.

#set math.cases(delim: "|")

$
  cal(Z) = {
    z cases(
      #h(0.5em) 1 <= z_((k,m))^l <= ... ,
      #h(0.5em) forall k in cal(K) #sym.comma forall m in cal(M)_k #sym.comma ...
    )
  }
$

4 Likes