二つの変数 x と y があり、入力 x に対して、出力 y の値を決定する規則(x に特定の値を代入するごとに y の値が確定する)が与えられているとき、変数 y を「x を独立 変数 (independent variable) とする関数」あるいは簡単に「x の関数」という。対応規則を明示するときは、適当な文字列(特に何か理由がなければ、function の頭文字から f が選ばれることが多い)を使って
のように対応規則に名前を付与する。x の関数 y を f(x) と書いて、x = a を代入したときに決まる関数の値を f(a) と表すのである。しかしここで、定数関数の例に示されるように、個々の y の値について対応する x の値が一つに決まるとは限らないことに注意しなければならない。この f(x) という表記法よるものである。オイラー自身は、変数 組み合わせてできた数式のことを関数と定義してい上に述べたように、 y という変数を関数と定義した。
y が x の関数であることの別の表現として、変数 y は変数 x に従属す るともいい、y を従属変数 (dependent variable) と言い表す。独立変数がとりうる値の全体(変域)を、この関数の定義域 (domain) といい、独立変数が定義域のあらゆる値をとるときに、従属変数がとりうる値(変域)を、この関数の値域 (range) という。
関数の値域はC の部分集合であることが多い。値域が実数の集合となる関数を実数値関数 (real valued function) といい、値域が複素数の集合となる関数を複素数値関数 (complex valued function) という。それぞれ定義域がどのような集合であるかは問わないが、定義域も値域も実数の集合であるような関数を実関数 (real function) といい、定義域も値域も複素数の集合であるような関数を複素関数 (complex function) という。