I'll try to use the semantics of CTL defined here: Wikipedia about CTL.
(I)
For proving EF (p or q) = EF(p) or EF(q)
:
(M, s1) |= EF (p or q)*
<=> (Def. of EF)
There is s1->s2->... such that there is an i >= 1 such that (M, s_i) |= (p or q)
<=> (Def. of or)
There is s1->s2->... such that is an i >= 1 such that ((M, s_i) |= p OR ((M, s_i) |= q)
<=> (Equivalence rules for predicate logic)
(There is s1->s2->... such that is an i >= 1 such that ((M, s_i) |= p)
OR
(There is s1->s2->... such that is an i >= 1 such that ((M, s_i) |= q)
<=> (Def. of EF)
EF(p) or EF(q)
So the equivalence is valid.
(II)
AF(p or q) = AF(p) or AF(q)
Assume a Kripke structure with three states S0, S1, S2, let S0 be the initial state.
In S0 neither p nor q
holds, in S1 only p
holds, in S2 only q
holds.
Transitions are:
S0 -> S1
S0 -> S2
S1 -> S1
S2 -> S2
S1 forms an SCC, and S2 forms an SCC.
AF(p or q) holds for this Kripke structure, since (p or q) holds for ALL states except S0, and eventuelly every sequence reaches S1 or S2.
What about AF(p) or AF(q)?
AF(p) does NOT hold, since there is the sequence S0 S2 S2 S2 ... where no p appears.
AF(q) does not hold, since there is the sequence S0 S1 S1 S1 ... where no q appears.
For (III): Have fun proving it, maybe with the techniques used above :)