# How to prove that a predicate is not hard-core?

How can I prove that given a predicate $$hc$$ and a one-way function $$f$$ that $$hc$$ is not hard-core? I was thinking about something like that:

i define $$f(x) = (g(x), hc(x))$$ that is one-way but $$hc$$ is not hard-core 'cause it's value is easly reconstructable from the output.

Is it right? How can I actually prove that?

• You must exhibit an efficient algorithm that computes $\mathrm{hc}(x)$ with non-negligible probability when given $f(x)$ (for uniformly random $x$). Commented May 29, 2019 at 14:26
• Do I understand you correctly, that $g$ is a OWF and $hc$ is a hardcore predicate of $g$? And your question is why $hc$ is not also a hardcore predicate of $f$ as defined in the question? Commented May 29, 2019 at 19:43
• $G$ is a OWF and given the function $f$ that is something like $f(x) = (g(x), hc(x))$ I have to prove that eventhogh $f$ is OWF, $hc$ is not hard core for $f$ Commented May 30, 2019 at 14:59
• @quaqua: So like given $(g(x), hc(x))$ make a good guess at the value of $hc(x)$?
– Ry-
Commented May 31, 2019 at 0:59
• @Ry yes, i have to prove it somehow Commented May 31, 2019 at 12:10