*Edit: Solved it, the story below is no longer relevant. *
I'm confused about how one is supposed to calculate the score exactly. My biggest confusion seems to stem from the misunderstanding of what a 'point' is. Is a point one of the input vectors? so 101, 110 and 111 are 3 points?

So then g[a], returns 1 for all three points would mean that:

Code:

101 | 1
110 | 1
111 | 1

And g[b], returns all 0's:

Code:

101 | 0
110 | 0
111 | 0

And g[c], the xor function, would return:

Code:

101 | 0
110 | 0
111 | 1

and g(d), inverse of g(c), would return:

Code:

101 | 1
110 | 1
111 | 0

Or could it be that g[1] means that it will only return a 1 if all points are 1? So:

Code:

101 | 0
110 | 0
111 | 1

and g[b] would have a score of 0, because there are no 000 points.

I'm utterly confused by the question. :/