closure of the recognizable languages
Recognizable languages are still quite robust, but they carry one famous wound. Because a recognizer can shout YES reliably yet may go silent (loop forever) on a no, any way of combining them that only needs to confirm a YES works fine — but anything that needs to confirm a NO is in trouble. So the recognizable class is closed under the operations that build a yes out of yeses, and fails exactly at the one operation that demands turning a yes into a no.
What they are closed under: union, intersection, concatenation, and the Kleene star. The care needed is to avoid getting stuck on a sub-machine that loops. For union of L1 and L2 on input w, you cannot run R1 to completion then R2 — R1 might loop forever even though w ∈ L2. Instead DOVETAIL: alternate steps of R1 and R2, and accept the moment either accepts. For intersection it is easier, since both must accept: run R1 to acceptance, then R2 (if w is in the intersection both will accept; if not, looping is allowed anyway). Concatenation and star are handled by dovetailing over the finitely many splits of w combined with running the recognizers. In every case acceptance is reached in finite time exactly when it should be.
What they are NOT closed under: complement. This is the signature asymmetry. If recognizable languages were closed under complement, then every recognizable language L would have a recognizable complement, and by the theorem 'decidable iff recognizable and co-recognizable' that would make EVERY recognizable language decidable. But A_TM is recognizable and undecidable — contradiction. So the recognizable class cannot be closed under complement. Concretely, A_TM is recognizable while its complement is not: there is no machine that reliably confirms 'M does not accept w', because confirming a non-acceptance would mean detecting an endless loop in finite time.
Union of two recognizable languages: on input w, dovetail recognizers R1 and R2 (one step of each, then two, ...). If w is in either language, the corresponding recognizer accepts at some finite point, and you accept. Running R1 to completion first would risk looping before R2 ever gets a turn.
Closed under union/intersection/concat/star (via dovetailing) — but NOT under complement.
The one closure they LACK — complement — is the whole story. If they had it, recognizable would collapse into decidable; A_TM (recognizable, undecidable) proves they cannot.