I want to write the following set
\begin{align*}\{ d \in \mathcal{D}^* | \begin{split}F(S_1,\ldots,S_k) \land \bigwedge_{i = 1}^k S_i = \set{ n \in \N ; \varphi_i(d(n)) } \land \\ \exists \overline{t} \in P(L_1,\ldots,L_n). \bigwedge_{i = 1}^k S_i = \set{ n \in \N ; t_i(n) } \end{split}\}\end{align*}
The problem is that the braces and middle line don't scale automatically.
I was using the following command to define sets
\usepackage[utf8]{inputenc}\usepackage{mathtools}\usepackage{xparse}\DeclarePairedDelimiterX{\set}[1]{\{}{\}}{\setargs{#1}}\NewDocumentCommand{\setargs}{>{\SplitArgument{1}{;}}m}{\setargsaux#1}\NewDocumentCommand{\setargsaux}{mm}{\IfNoValueTF{#2}{#1} {#1\nonscript\:\delimsize\vert\allowbreak\nonscript\:\mathopen{}#2}}\def\Set{\set*}
But I'm not sure how to adapt this to my usecase.