a_fstate_case: fixes y :: "'a \<aproc> \<times> 'b list \<times> 'c \<times> 'd" obtains a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x1 :: "lambda \<times> (nat \<Rightarrow> 'a option)" and x1a :: "lambda" and x2 :: "nat \<Rightarrow> 'a option" and x1aa :: "nat" and x2a :: "(nat \<times> char list) list" and x3 :: "call" where "y = (a__, b__, c__, d__)" and "a__ = PC x1__" and "x1__ = (x1a__, x2__)" and "x1a__ = Lambda x1aa__ x2a__ x3__" and "length x2a__ = length b__"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x1 :: "lambda \<times> (nat \<Rightarrow> 'a option)" and x1a :: "lambda" and x2 :: "nat \<Rightarrow> 'a option" and x1aa :: "nat" and x2a :: "(nat \<times> char list) list" and x3 :: "call" where "y = (aa__, ba__, ca__, da__)" and "aa__ = PC x1b__" and "x1b__ = (x1a, x2b__)" and "x1a = Lambda x1aa x2a x3" and "length x2a \<noteq> length ba__"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x2 :: "prim" and x1 :: "nat" where "y = (ab__, bb__, cb__, db__)" and "ab__ = PP x2c__" and "x2c__ = Plus x1c__" and "bb__ = []"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x2 :: "prim" and x1 :: "nat" and x21 :: "'b" and x22 :: "'b list" where "y = (ac__, bc__, cc__, dc__)" and "ac__ = PP x2d__" and "x2d__ = Plus x1d__" and "bc__ = x21__ # x22__" and "x22__ = []"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x2 :: "prim" and x1 :: "nat" and x21 :: "'b" and x22 :: "'b list" and x21a :: "'b" and x22a :: "'b list" where "y = (ad__, bd__, cd__, dd__)" and "ad__ = PP x2e__" and "x2e__ = Plus x1e__" and "bd__ = x21a__ # x22a__" and "x22a__ = x21aa__ # x22aa__" and "x22aa__ = []"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x2 :: "prim" and x1 :: "nat" and x21 :: "'b" and x22 :: "'b list" and x21a :: "'b" and x22a :: "'b list" and x21b :: "'b" and x22b :: "'b list" where "y = (ae__, be__, ce__, de__)" and "ae__ = PP x2f__" and "x2f__ = Plus x1f__" and "be__ = x21b__ # x22b__" and "x22b__ = x21ab__ # x22ab__" and "x22ab__ = x21ba__ # x22ba__" and "x22ba__ = []"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x2 :: "prim" and x1 :: "nat" and x21 :: "'b" and x22 :: "'b list" and x21a :: "'b" and x22a :: "'b list" and x21b :: "'b" and x22b :: "'b list" and x21c :: "'b" and x22c :: "'b list" where "y = (af__, bf__, cf__, df__)" and "af__ = PP x2g__" and "x2g__ = Plus x1" and "bf__ = x21c__ # x22c__" and "x22c__ = x21ac__ # x22ac__" and "x22ac__ = x21bb__ # x22bb__" and "x22bb__ = x21ca__ # x22ca__"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x2 :: "prim" and x21 :: "nat" and x22 :: "nat" where "y = (ag__, bg__, cg__, dg__)" and "ag__ = PP x2h__" and "x2h__ = prim.If x21d__ x22d__" and "bg__ = []"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x2 :: "prim" and x21 :: "nat" and x22 :: "nat" and x21a :: "'b" and x22a :: "'b list" where "y = (ah__, bh__, ch__, dh__)" and "ah__ = PP x2i__" and "x2i__ = prim.If x21e__ x22e__" and "bh__ = x21ad__ # x22ad__" and "x22ad__ = []"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x2 :: "prim" and x21 :: "nat" and x22 :: "nat" and x21a :: "'b" and x22a :: "'b list" and x21aa :: "'b" and x22aa :: "'b list" where "y = (ai__, bi__, ci__, di__)" and "ai__ = PP x2j__" and "x2j__ = prim.If x21f__ x22f__" and "bi__ = x21ae__ # x22ae__" and "x22ae__ = x21aaa__ # x22aaa__" and "x22aaa__ = []"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x2 :: "prim" and x21 :: "nat" and x22 :: "nat" and x21a :: "'b" and x22a :: "'b list" and x21aa :: "'b" and x22aa :: "'b list" and x21b :: "'b" and x22b :: "'b list" where "y = (aj__, bj__, cj__, dj__)" and "aj__ = PP x2k__" and "x2k__ = prim.If x21g__ x22g__" and "bj__ = x21af__ # x22af__" and "x22af__ = x21aab__ # x22aab__" and "x22aab__ = x21bc__ # x22bc__" and "x22bc__ = []"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x2 :: "prim" and x21 :: "nat" and x22 :: "nat" and x21a :: "'b" and x22a :: "'b list" and x21aa :: "'b" and x22aa :: "'b list" and x21b :: "'b" and x22b :: "'b list" and x21c :: "'b" and x22c :: "'b list" where "y = (ak__, bk__, ck__, dk__)" and "ak__ = PP x2" and "x2 = prim.If x21h__ x22h__" and "bk__ = x21ag__ # x22ag__" and "x22ag__ = x21aa # x22aa" and "x22aa = x21b # x22b" and "x22b = x21c # x22c"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" where "y = (al__, bl__, cl__, dl__)" and "al__ = AStop" and "bl__ = []"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x21 :: "'b" and x22 :: "'b list" where "y = (am__, bm__, cm__, dm__)" and "am__ = AStop" and "bm__ = x21i__ # x22i__" and "x22i__ = []"   | a :: "'a \<aproc>" and b :: "'b list" and c :: "'c" and d :: "'d" and x21 :: "'b" and x22 :: "'b list" and x21a :: "'b" and x22a :: "'b list" where "y = (a, b, c, d)" and "a = AStop" and "b = x21 # x22" and "x22 = x21a # x22a"