距離函数
距離函数（きょりかんすう、）、距離計量（きょりけいりょう）あるいは単に距離（きょり、）、計量（けいりょう、）は、集合の二点間の距離を定義する函数である。距離が定義されている集合を距離空間（きょりくうかん、metric space）と呼ぶ。距離はその集合上の位相（距離位相）を誘導するが、必ずしもすべての位相空間が距離位相によって生成されるわけではない。ある位相空間の位相を距離によって記述することができるとき、その位相空間は距離化可能 であるという。
集合 "X" 上の函数
（ここで、R は実数全体の成す集合）が距離函数であるとは、"x", "y", "z" を "X" の任意の元として、以下の条件
が満たされることを言う（条件 1, 2 をあわせて正定値性ということもある）。非負性をいう条件 1 は他の条件から導くことができる（上の三角不等式で "z" = "x" とした式に同一律と対称律を適用すれば非負性が導かれる）ので、距離函数だけを考えるならば条件 1 を必ずしも別項立てる必要はないが、適当な一般化を考えたりする際には分けておくほうが有効なこともある。
これらの条件は直感的な距離の概念が持っている性質を抽出したものである。たとえば、相異なる2点の間には正の距離があり、距離によって識別できないならば同じ点（; 不可識別者同一）である。また、ある点 "x" から別の点 "y" へ行く距離と、辿り方を逆にした "y" から "x" までの距離とは同じである。三角不等式は、ある点 "x" から別の点 "z" へ直接行く場合と比べて、さらに他の点 "y" へ寄り道したほうが遠くなるということである。ユークリッドは「二点間の最短距離は直線である」と述べているが、これはユークリッド幾何学における三角不等式を表したものに他ならない。
三角不等式よりもさらに強い条件
が満たされる距離は超距離と呼ばれる。
距離空間 "X" 上の距離 "d" が固有 (intrinsic; 内在的) であるとは、"X" の任意の2点 "x", "y" が "d"("x", "y") にいくらでも近い弧長を持つ曲線で結ぶことができるときに言う。
加法 + : "X" × "X" → "X" の定義された集合上で、距離 "d" が平行移動不変であるとは
が "X" の任意の "x", "y" および "a" について成立することを言う。与えられた集合 "X" に定められた二つの距離 "d", "d" が（位相的に）同値（どうち、）であるとは 恒等写像
が同相であることをいう。また、これが一様同相ならば二つの距離は一様同値（いちようどうち、uniformly equivalent）であるという。
たとえば、"d" が距離であるとき、min("d", 1) と "d"/(1 + "d") は "d" に同値な距離を定める。
与えられたノルム空間 ("X", ||•||) に対して、"X" 上の距離 "d" を
によって定めることができる。これを、ノルム ||•|| によって誘導された距離という。
逆に、ベクトル空間 "X" 上に距離 "d" が定義されて、以下の条件
が満たされるとき、"X" 上のノルムが
と置くことによって定まる。
同様に、半ノルムは擬距離を定め、平行移動不変かつ同次の擬距離は半ノルムを誘導する。
距離の公理の条件を緩める方法はいくつかあるので、それぞれ（あるいはいくつかの組み合わせ）に応じて距離空間を一般化する方法も複数存在する。それら一般化された距離の概念についての用語法は完全に標準化されているわけではないことに注意を要する。とりわけ、函数解析学においてベクトル空間上の半ノルムから生じる擬距離は、半ノルムから生じる距離だから「半距離」と呼ぶとしても不自然ではないけれども、そうすると位相空間論における用語法と齟齬をきたす。
文脈によっては、距離函数 "d" が値として無限大 (∞) をとることを許容する（即ち、二点間の距離は拡張実数直線における非負値であるとする）こともある。このような距離函数を称して拡張距離 ("extended metric") と言う。任意の拡張距離函数は、適当な方法で（連続性や収斂性といった）位相的な概念を変えないという意味で等価な（有限値をとる通常の）距離函数に変形することができる。それを為すには、0 を 0 に写す劣加法性単調減少函数を使い、例えば "d"′("x", "y") = "d"("x", "y") / (1 + "d"("x", "y")) や "d"′′("x", "y") = min(1, "d"("x", "y"))) などとすればよい。
距離函数が有限非負実数値をとるという条件は、もっと別の有向集合に値をとるという方向に緩めることもできる。このような方法で公理を定式化しなおして、一様空間（異なる点の間での局所位相を比較可能にする抽象構造を備えた位相空間）の構成を導くことができる。
空間 "X" 上の擬距離 ("pseudometric") 函数 "d": "X" × "X" → R は距離の公理のうち不可識別者同一の仮定を各 "x" に対して "d"("x", "x") = 0 を満たすのみに緩める（つまり "d"("x", "y") = 0 でありながら "x" ≠ "y" となることが起こりうる）以外はすべて満足する。即ち、擬距離の公理はで与えられる。擬距離は一般化された距離のなかで最もよく用いられる概念である。文献によっては、この一般化された距離の概念を、半ノルムから導かれることを以て「半距離」と呼ぶ場合があるので注意。
いくつかの文献では、準距離 ("quasimetric") 函数を対称性を除く全ての距離の公理を満足する函数として定義する。即ち、準距離の公理はで与えられる。空間 "X" 上の準距離 "d" に対して、
とおいて得られる "d"′ は "X" 上の距離を成す。
準距離の概念は実生活の中にありふれている。例えば、山村からなる集合 "X" を考え、山村間の移動時間を "d" とすると、これは準距離になる（山を登って移動するのは下って移動するよりも時間が掛かる）。他にも、一方通行の路を含むようなマンハッタン距離空間を考えたとき、地点 "A" から地点 "B" へ行く経路の集合と地点 "B" から地点 "A" へ行く経路の集合が違うということがありうる。にもかかわらず数学で準距離を扱うことは希であり、その名称も標準的に定まったものと言うわけではない。
実数全体の成す集合 R 上の準距離の例が
とおくことによって得られる。この準距離から定められる位相空間はゾルゲンフライ直線である。
空間 "X" 上の半距離 ("semimetric") 函数 "d": "X" × "X" → R は三角不等式を除く全ての距離の公理を満たす。即ち半距離の公理は
で与えられる。文献によっては、半距離は
のように弱い形の三角不等式を満足するとすることもある。ρ-劣距離不等式は（公理の条件 1 のもと）ρ-緩三角不等式を導き、また ρ-緩三角不等式からは 2ρ-劣距離不等式が得られる。これら位相的に同値な条件を満足する半距離を「準距離」("quasimetrics") と呼ぶものもあるし、 ("nearmetrics")や、劣距離 ("inframetrics") ということもある。
ρ-劣距離不等式はインターネットにおける往復遅延時間のモデルを作るために導入された。三角不等式からは 2-劣距離不等式が導かれ、また超距離不等式は 1-劣距離不等式そのものである。
前距離 ("premetric") は距離の公理のほとんどを仮定から外したものになっていて、前距離函数は
の二つを満足することのみが要求される。これを前距離と呼ぶのは標準的な語法というわけではなく、「前距離」が別の一般化された距離、例えば擬半距離を指したり、擬距離を指したりする場合もある。ロシア語の本の翻訳では（premetric でなく）"prametric" となっているものもある。
前距離 "d" から以下のようにして位相が定められる。正の実数 "r" を取り、中心 "p" の "r"-開球体を
で定め、集合 "S" が開であるというのを "S" に属する各点 "p" に対して、中心 "p" の適当な "r" に対する "r"-開球体で、"S" に含まれるようなものが取れることと定義する（一般に、"r"-開球体自身はこの位相に関して開であるとは限らない。実は "r"-開球体の内部が空となることが起こりうる）。こうして任意の前距離空間が位相空間となり、実は列型空間になる。
距離に対すると同様に、二つの集合 "A", "B" 間の距離を
で定めると、これは前距離空間の冪集合上の前距離になる。同じことを（擬半）-距離空間に対して行えば、得られるものは擬半距離（即ち対称的な前距離）になる。また任意の前距離から
として前閉包作用素 (preclosure operator) "cl" が生じる。
接頭修飾辞「擬」、「準」、「半」などは組み合わせて使うことができる。例えば 擬準距離 （これをしばしば片距離 ("hemimetric") ともいう）は不可識別者同一の公理と対称性の公理を緩めて、単に三角不等式を満足するだけの前距離を意味するものになる。擬準距離空間において "r"-開球体の全体は開集合の基である。非常に基本的な擬準距離の例は、二点集合 {0,1} に前距離 "d" を "d"(0,1) = 1 および "d"(1,0) = 0 で入れたもので、得られる位相空間はシェルピンスキー空間になる。
拡張擬準距離を備えた集合はウィリアム・ローヴェアが「一般化距離空間」("generalized metric spaces") として研究した。圏論的な観点からは、拡張擬距離空間の全体や拡張擬準距離空間の全体は、対応する距離函数を通じて、距離空間の圏のなかで考えるとよく振る舞う。これらの圏では自由に積や余積をとったり商対象を構成したりできるが、ひとたび「拡張」という部分を落とすと有限積や有限余積しかとれなくなり、「擬」という部分を落とすと商が取れなくなる。はこれらの圏論的に良い性質を保持するような距離空間の一般化である。
微分幾何学において用いられる計量テンソルは「無限小」距離函数と考えることができる。計量テンソルは適当な可微分性条件を備えた接空間上の内積として定義されるが、本項に言う意味での距離函数ではなく、積分して初めて距離函数が導かれる。計量テンソルを備えた多様体はリーマン多様体と呼ばれる。ここで内積の正定値性の要求を落とせば、同様に擬リーマン計量テンソルが得られ、積分して擬半距離が得られる。これらは相対論の幾何学的研究において用いられ、そこでは「不変距離」("invariant distance") とも呼ばれる。