Answer from cs61c-cj (Peter Lau 16539384) for Question 1 The maximum number of terms (products) in the function's canonical sum-of-products representation is 2^N. For N inputs, there are 2^N possible input combinations. Since the number of terms in the sum-of-products representation is the number of 1's in the output, there are 2^N terms corresponding with the maximum 2^N number of 1's in the output.