  In this paper proof of the twin prime conjecture is going to be presented.
Originally very difficult problem (in observational space) has been transformed
into a simpler one (in generative space) that can be solved. It will be shown
that twin primes could be obtained through two stage sieve process, and that
will be used to show that exist infinite number of twin primes. The same
approach is used to prove the Polignac's conjecture for cousin primes.
