Please help explain why these are the reactants to prepare the Witting reaction given. If you can please show the mechanism.

a) Aldehyde and ketone are required for the Witting reaction to proceed.
b) Carboxylic acid and alcohol are necessary for the Witting reaction to occur.
c) Alkene and triphenylphosphine oxide are essential for the Witting reaction.
d) Ester and Grignard reagent are crucial for the Witting reaction mechanism.