Re: Konstantin Knizhnik 2017-05-29 <592bbd90.3060...@postgrespro.ru> > On 05/27/2017 09:50 PM, Peter Eisentraut wrote: > > On 5/25/17 12:30, Konstantin Knizhnik wrote: > > > Functions like (info->>'name') are named "surjective" ni mathematics. > > A surjective function is one where each value in the output type can be > > obtained by some input value. That's not what you are after here. The > > behavior you are describing is a not-injective function. > > > > I think you are right that in practice most functions are not injective. > > But I think there is still quite some difference between a function > > like the one you showed that selects a component from a composite data > > structure and, for example, round(), where in practice any update is > > likely to change the result of the function. > > > Thank you, I will rename "surjective" parameter to "injective" with "false" > as default value.
I think the term you were looking for is "projection". https://en.wikipedia.org/wiki/Projection_(set_theory) Christoph -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers