These words are in practice synonyms, but suggest different ways in which we consider what's going on. * "Construct" suggests thinking of a FREDKIN gate as a subroutine, which you realise as a composition of more primitive operations. * "Simulate" suggests the idea that there is some model (eg. conservative reversible computation) for which FREDKIN is a primitive, and which you are realising by other operations in some other model (eg. quantum computation, or reversible but not necessarily conservative computation) in which it is not a primitive. The second viewpoint is particularly useful when you consider operations which are being realised using a protocol which succeeds only under certain circumstances, or using a protocol which is only realises an operation up to some probability of error or up to some precision.