@section 実数の区間

実数の区間を扱うライブラリです。

@deffn  {Reader Syntax} #R[n m]
@deffnx {Reader Syntax} #R(n m]
@deffnx {Reader Syntax} #R[n m)
@deffnx {Reader Syntax} #R(n m)
それぞれ実数の
@itemize @bullet
@item 閉区間@math{[n, m]}
@item 半開区間@math{(n, m]}
@item 半開区間@math{[n, m)}
@item 開区間@math{(n, m)}
@end itemize
を記述します。
@end deffn

@defun  make-closed-interval n m
@defunx make-left-open-interval n m
@defunx make-right-open-interval n m
@defunx make-open-interval n m
それぞれ実数の
@itemize @bullet
@item 閉区間@math{[n, m]}
@item 半開区間@math{(n, m]}
@item 半開区間@math{[n, m)}
@item 開区間@math{(n, m)}
@end itemize
を生成します。
@end defun

@defun neighborhood-of? range obj
戻り値: オブジェクトが区間にあるときは#t@*
オブジェクトが区間@var{range}にあるかを調べます。
@end defun

@defun  topology-closed? range
@defunx topology-open? range
戻り値: 区間が閉じている(開いている)とき#t@*
区間@var{range}が閉じている(開いている)かを調べます。
@end defun

@defun topology-contained? range1 range2
戻り値: @math{range1 \subseteq range2}のとき#t@*
@var{range1}が@var{range2}に含まれるとき#tを返します。
@end defun

@defun topology-independent? range1 range2
戻り値: @math{range1 \cap range2 = \phi}のとき#t@*
@var{range1}と@var{range2}が独立しているとき#tを返します。
@end defun

@defun  topology-empty? range
戻り値: @math{range = \phi}のとき#t@*
@var{range}が空集合であるかを調べます。
@end defun

@defun  set-maximum range
@defunx set-minimum range
戻り値: @math{\max range}(@math{\min range})@*
@var{range}の最大値(最小値)を求めます。
最大値(最小値)のないときは#fを返します。@*
最大値(最小値)のない場合として、
@itemize @bullet
@item 最大値(最小値)が無限大
@item 最大(最小)の端が開いている
@end itemize
があります。
@end defun

@defun  set-supremum range
@defunx set-infimum range
戻り値: @math{\sup range}(@math{\inf range})@*
@var{range}の上界(下界)を求めます。
上界(下界)のないときは#fを返します。@*
上界(下界)のない場合として、上界(下界)が無限大の場合があります。@*
(最大(最小)の端が開いているときも上界(下界)はあります。)
@end defun

@defun topology-union range @dots{}
戻り値: @math{range_1 \cup range_2 \cup \cdots}@*
@var{range}@dots{}の和集合を求めます。
@end defun

@defun topology-intersection range @dots{}
戻り値: @math{range_1 \cap range_2 \cap \cdots}@*
@var{range}@dots{}の共通部分を求めます。
@end defun

@defun  topology-closure R
@defunx topology-interior R
戻り値: @math{\overline{R}}(@math{R^\circ})@*
@var{R}の(集合論的な)閉包(内部)を求めます。
@end defun

@defun topology-cardinality range
戻り値: @var{range}の濃度@*
@var{range}の濃度(cardinality)を求めます。
@end defun

@defun cardinality->integer cardinality
戻り値: 整数@*
@var{cardinality}を整数に変換します。無限の濃度のときは#fを返します。
@end defun

@defun cardinality-finite? cardinality
戻り値: 濃度が有限であるときに#t@*
@var{cardinality}が有限のときに#tを返します。
@end defun

@defun cardinality-countable? cardinality
戻り値: 濃度が可算であるときに#t@*
@var{cardinality}が可算、つまり@math{\aleph_0}
以下のときに#tを返します。
@end defun

@defun + cardinality @dots{}
戻り値: 濃度@*
[R5RS+] 濃度の和を求めます。この手続きは濃度に拡張されています。
@end defun

@defun * cardinality @dots{}
戻り値: 濃度@*
[R5RS+] 濃度の積を求めます。この手続きは濃度に拡張されています。
@end defun



