cases: fixes x :: "formula" obtains t1 :: "trm" and t2 :: "trm" where "x = formula.Eq t1__ t2__"   | xa :: "nat" and y :: "nat" where "x = Neg (formula.Eq (Var xa) (Var y__))"   | t1 :: "trm" and t2 :: "trm" where "x = Less t1a__ t2a__"   | t1 :: "trm" and t2 :: "trm" where "x = LessEq t1 t2"   | e :: "String.literal" and ts :: "trm list" where "x = Pred e ts"   | p :: "String.literal" and \<phi> :: "formula" and \<psi> :: "formula" where "x = formula.Let p \<phi>'__ \<psi>__"   | v :: "String.literal" and va :: "trm list" where "x = Neg (Pred v__ va__)"   | v :: "String.literal" and va :: "formula" and vb :: "formula" where "x = Neg (formula.Let vb__ vaa__ vba__)"   | vb :: "event_data" and va :: "trm" where "x = Neg (formula.Eq (Const vbb__) vab__)"   | vb :: "trm" and vc :: "trm" and va :: "trm" where "x = Neg (formula.Eq (Plus vbc__ vc__) vac__)"   | vb :: "trm" and vc :: "trm" and va :: "trm" where "x = Neg (formula.Eq (Minus vbd__ vca__) vad__)"   | vb :: "trm" and va :: "trm" where "x = Neg (formula.Eq (UMinus vbe__) vae__)"   | vb :: "trm" and vc :: "trm" and va :: "trm" where "x = Neg (formula.Eq (Mult vbf__ vcb__) vaf__)"   | vb :: "trm" and vc :: "trm" and va :: "trm" where "x = Neg (formula.Eq (Div vbg__ vcc__) vag__)"   | vb :: "trm" and vc :: "trm" and va :: "trm" where "x = Neg (formula.Eq (Mod vbh__ vcd__) vah__)"   | vb :: "trm" and va :: "trm" where "x = Neg (formula.Eq (F2i vbi__) vai__)"   | vb :: "trm" and va :: "trm" where "x = Neg (formula.Eq (I2f vbj__) vaj__)"   | v :: "trm" and vb :: "event_data" where "x = Neg (formula.Eq vd__ (Const vbk__))"   | v :: "trm" and vb :: "trm" and vc :: "trm" where "x = Neg (formula.Eq ve__ (Plus vbl__ vce__))"   | v :: "trm" and vb :: "trm" and vc :: "trm" where "x = Neg (formula.Eq vf__ (Minus vbm__ vcf__))"   | v :: "trm" and vb :: "trm" where "x = Neg (formula.Eq vg__ (UMinus vbn__))"   | v :: "trm" and vb :: "trm" and vc :: "trm" where "x = Neg (formula.Eq vh__ (Mult vbo__ vcg__))"   | v :: "trm" and vb :: "trm" and vc :: "trm" where "x = Neg (formula.Eq vi__ (Div vbp__ vch__))"   | v :: "trm" and vb :: "trm" and vc :: "trm" where "x = Neg (formula.Eq vj__ (Mod vbq__ vci__))"   | v :: "trm" and vb :: "trm" where "x = Neg (formula.Eq vk__ (F2i vbr__))"   | v :: "trm" and vb :: "trm" where "x = Neg (formula.Eq vl__ (I2f vbs__))"   | v :: "trm" and va :: "trm" where "x = Neg (Less vm__ vak__)"   | v :: "trm" and va :: "trm" where "x = Neg (LessEq vn__ val__)"   | v :: "formula" where "x = Neg (Neg vo__)"   | v :: "formula" and va :: "formula" where "x = Neg (Or vp__ vam__)"   | v :: "formula" and va :: "formula" where "x = Neg (And vq__ van__)"   | v :: "formula list" where "x = Neg (Ands vr__)"   | v :: "formula" where "x = Neg (Exists vs__)"   | v :: "nat" and va :: "agg_type \<times> event_data" and vb :: "nat" and vc :: "trm" and vd :: "formula" where "x = Neg (Agg vt__ vao__ vbt__ vc vd)"   | v :: "\<I>" and va :: "formula" where "x = Neg (Prev vu__ vap__)"   | v :: "\<I>" and va :: "formula" where "x = Neg (Next vv__ vaq__)"   | v :: "formula" and va :: "\<I>" and vb :: "formula" where "x = Neg (Since vw__ var__ vbu__)"   | v :: "formula" and va :: "\<I>" and vb :: "formula" where "x = Neg (Until vx__ vas__ vb)"   | v :: "\<I>" and va :: "formula Regex.regex" where "x = Neg (MatchF vy__ vat__)"   | v :: "\<I>" and va :: "formula Regex.regex" where "x = Neg (MatchP v va)"   | \<phi> :: "formula" and \<psi> :: "formula" where "x = Or \<phi>''__ \<psi>'__"   | \<phi> :: "formula" and \<psi> :: "formula" where "x = And \<phi>'''__ \<psi>''__"   | l :: "formula list" where "x = Ands l"   | \<phi> :: "formula" where "x = Exists \<phi>''''__"   | y :: "nat" and \<omega> :: "agg_type \<times> event_data" and b :: "nat" and f :: "trm" and \<phi> :: "formula" where "x = Agg y \<omega> b f \<phi>'''''__"   | I :: "\<I>" and \<phi> :: "formula" where "x = Prev Ia__ \<phi>''''''__"   | I :: "\<I>" and \<phi> :: "formula" where "x = Next Ib__ \<phi>'''''''__"   | \<phi> :: "formula" and I :: "\<I>" and \<psi> :: "formula" where "x = Since \<phi>''''''''__ Ic__ \<psi>'''__"   | \<phi> :: "formula" and I :: "\<I>" and \<psi> :: "formula" where "x = Until \<phi> Id__ \<psi>"   | I :: "\<I>" and r :: "formula Regex.regex" where "x = MatchP Ie__ ra__"   | I :: "\<I>" and r :: "formula Regex.regex" where "x = MatchF I r"