We can tackle this question by elimination.
| Domain | >= | Range |
So, if domain is finite, then range must be finite. both d and e must be true. So, domain is not finite since the question has a single option correct.
Moreover, we can take an example to counter the statement that domain or range is finite. Example is ->
Example 1-
if A = B = Set of all real no.s, and if g(x) = x-1, h(x) = x+1, f(x) = x (domain, range of all three functions not finite)
then the condition that f o g = f o h => g=h will also be satisfied. How?
The condition can be written as if g not equal h, then f o g not eq f o h.
In this case, let's assume f o g = f o h are equal even if g is not equal to h.
=> x + 1 = x -1
=> 1 = -1 ( which is false always)
Hence, our assumption was wrong. Therefore, in this example the condition f o g = f o h => g=h is satisfied.
The options that remain are a,b,c.
Example 2-
if A = Singleton Set, B = any set may or may not be singleton. From B -> A, only one function is possible because all the elements of the domain (B ) must be mapped to that single element in A only. Then, g = h is always true in this case. So, f o g = f o h => g=h will always be true.
But, f from A -> B has a single element in the domain, so will be mapped to single element in B. Hence, for f is not onto. So, f is not a bijection also. Hence, option a and c are wrong. d and e were prooved wrong by the previous example.
So, the correct option is b. f must be one-one.