seg本モジュールは線セグメント、浮動小数点間隔を表現するsegデータ型を実装します。segは間隔の終端内の不確定性を表すことができ、特に実験計測の表現に有用です。計測の幾何は数値の連続におけるものより通常より複雑です。計測は通常、多少あいまいな制限を持つ連続の部分部分となります。不確実性と不規則性のため、さらに、プロテインを安定させる温度範囲など計測される値は本質的に何らかの状態を示す間隔となる可能性があるため、計測は間隔として表れます。一般的な見方を使うと、こうしたデータは値の組合せではなく間隔としてデータを格納する方が便利なようです。実際、ほとんどのアプリケーションでより効率的であると判明してさえいます。一般的な見方をさらに進めると、制限の曖昧さは、伝統的な数値データ型を使用することで情報がある程度損失してしまうことを暗示しています。これを考えてみましょう。計測機器で6.50と読み取り、読み取ったデータをデータベースに格納します。それを取り出す時にどうなるでしょう。row)計測という世界では6.50は6.5と同じではありません。時としてこれが致命的な違いになる場合があります。実験者は信頼する桁を書き出し(公開し)ます。6.50は実質それ以上の値を含むあいまいな間隔であり、(おそらく)その分布におけるもっとも特徴的なものを中央値として持つ6.5という間隔よりもあいまいです。私達は厳密にこうした異なるデータ項目が同じものとして現れることを好みません。任意の可変精度を持つ間隔の制限を記録できる特別なデータ型を持つことは素晴らしいことでしょう。変数はある意味、各データ要素が独自の精度を持ちます。間隔の外部表現は、1つまたは2つの浮動小数点値を範囲演算子(..または...)で結び付けた形になります。他にも、中央値と正負の偏差として指定することも可能です。省略可能な確実性指示子(<、>、~)を格納することもできます。(しかし、確実性指示子はすべての組込みの演算子で無視されます。)表F-29では、x、y、deltaは浮動小数点数値を表します。delta以外のxとyの前に確実性指示子を付与することができます。幅0のセグメントを作成します(こうすると点になります)。幅0のセグメントを作成し、データ内に~を記録します。~はseg型の演算では無視されますが、コメントとして保持されます。5.0という点を作成します。<は無視されますが、コメントとして保持されます。5.0という点を作成します。>は無視されますが、コメントとして保持されます。5.3という間隔を作成します。(+-)という記述は保持されないことに注意してください。2、1..2と同じです(範囲演算子前後の空白は無視されます)。データソースで...が広く使用されるため、..の代わりの綴りとして許可されています。残念なことにこれにより解析上の曖昧性が生じました。0...23の上限が23なのか0.23なのかが明確ではありません。これは、segの入力において、少なくとも1つの桁を数値内の小数点の前に書くことを要求することで解決されます。2のような、下限値が上限値より大きな間隔を拒絶します。内部的にseg値には32ビット浮動小数点数値の組合せが格納されます。これは7桁以上の有効桁を持つ数値が切り詰められることを意味します。有効桁が正確に7桁、または7桁未満の数値は元の精度が保たれます。問い合わせが0.00を返す場合、最後の0が書式付けのための誤差にならないことが確実です。これは元のデータの精度を反映します。最初から続く0は精度の影響を受けません。0.0067は2有効桁のみを持つものと考えられます。使用方法segモジュールにはseg値用のGiSTインデックス演算子クラスが含まれます。GiST演算子クラスでサポートされる演算子には以下があります。d]の左側に存在します。