Difference between Pure function and Cordinary function

Hi all,
It would be helpful if anybody can tell me the difference between Pure Function and Cordinary function?

In reply to Amit Kumar Panda:

I’m not sure what a ‘cordinary function’ is that term doesn’t exist in the SV standard.
However, Section 35.5.1.3 contains this:

A function whose result depends solely on the values of its input arguments and with no side effects can be
specified as pure.

In reply to Amit Kumar Panda:
Did you mean Ordinary and not pure?

A pure function is any function whose return value can be determined solely by its input arguments. A pure function has no internal states variables and no references to any external variables other than those passed in as inputs. A pure function does not have modify any of its arguments (side-effects) and its return value is the only result of executing the function.

SystemVerilog requires functions to be pure when used in certain constructs like constant expressions, constraints and assertions.

In reply to alexgran:

Thank you alex. Actually I also had doubts about ‘cordinary function’ but I wanted to be sure since I got this question online. Thanks again

In reply to dave_59:

Thank you Dave . I got this question online and I wasn’t sure if there is something called ‘cordinary function’ in system verilog. Thanks for the clarification on pure function.