A) False because at a1 it aborts and a2 is still to be executed, therefore it's recoverable! It would only be non recoverable if the abort happens after either T1 or T2 commits.
B) To check for cascading aborts - First check if it's Cascadeless b/c Any Schedule which is NOT cascadeless is cascading aborts.
Now, Necessary condition for Cascadeless is - Producer - Consumer ie (W-R) conflict but there's no PC (W-R conflict) in here. Therefore it's Cascadeless and a Cascadeless schedule can never be Cascading aborts!
Note: Every cascadeless schedule is recoverable always! Foolproof option A)
C) True as reason as B)
D) False as before T2 commits, T1 is reading as well as writing!