2023年9月3日日曜日

不定積分とは何か

(重要外部リンク)
積分可能の定義と原始関数と不定積分の求め方

(ページ内リンク)

▽被積分関数の単位
▽はじめに
▽(外部リンク)原始関数とは何か
▽不定積分とは何か
▽積分の特徴
▽積分可能な例
▽不定積分に積分定数Cを加える事
▽不定積分の積分定数Cの扱いの誤り
▽必ずある間違い
▽広義積分 
▽(外部リンク)置換積分等の積分の計算に潜んでいる広義積分
▽(外部リンク)変な積分 


【被積分関数の単位】
 被積分関数は、均質な基本的な要素の単位で考える。
 具体的には、被積分関数を、全て、1つながりに連続する関数を単位にして考える。1つながりに連続する関数は正しく定義された連続関数です。その、1つながりに連続する関数を扱うのであれば、積分の計算で誤りに陥る事を防ぐことができます。

(はじめに)
 高校数学では、「原始関数を求める」のが積分だと言われています。
しかし、大学で教わる微分積分も調べて、積分とは何かを
熟慮した結果、
積分とは「不定積分を求めること」(不定積分とは何かをハッキリさせなければなりませんが)である事である事が分かりました。

高校生は、ハッキリ教えられないでも、動物的な本能で、
「積分で求めるべき”原始関数”は1つながりに連続でなければならない」
という経験を積んで来たと思います。それは、実は原始関数の定義に初めから明示しなければならない条件だったというあいまいさが原始関数の定義にはありました。
また、求める目標の原始関数の目標を明確化すると、それは、原始関数に近い関係にある不定積分でした。

積分で正しい答えを求めるために探していたのは、不定積分だったのです。

(1)不定積分F(x)は、それを微分すると、有限個の微分不可能な点を除く大部分の点で、1つながりに連続した単位の被積分関数f(x)が得られる関数の事です。
(2)不定積分は、明確に1つながりに連続な関数です。
(3)不定積分は、原始関数と違って、微分したとき、被積分関数f(x)の数点の関数値と一致しないでも良い関数です。大部分のxでf(x)と一致するだけで良いのです。

そういう不定積分を”原始関数”のつもりで求めるだけで良いのが積分の計算です。

以下では、その不定積分F(x)と、原始関数と、被積分関数f(x)との関係を見ていきましょう。

 なお、高校2年の微分積分の勉強のためには、「やさしく学べる微分積分」(石村園子)を読むと良いと思います。高校3年になって本格的に微分積分を学びたくなった学生は、学生が微分積分を無駄なく学べるよう工夫がこらされている本:小平邦彦「[軽装版]解析入門Ⅰ」を読むと、微分積分が無駄なく勉強できて良いと思います。

(積分の計算の基本)積分の基本はリーマン積分
定義6.1(Riemann積分) 同志社大学 押目教授
閉区間[a, b]上において有界(有限な最大値と有限な最小値を持つ)な関数f(x)に対して、
以下のn+1個の有限個の小区間への分割の仕方、および、その小区間内の点ξi(i = 1, 2, . . . , n) の位置のとり方に関係なく、各点の関数値の和Sが一通りに定まる時,
f(x)は閉区間[a, b]において(Riemann)積分可能という.


(リーマン積分の例1)

 下図の左上、右上、左、の3つの各グラフを、x軸の0から値xまでリーマン積分してグラフの面積を計算すると、xの値毎の面積が、3つの場合で共通して右下のグラフになります。
(リーマン積分の例2)
以下の図の関数f(x)のグラフを考えます。
この関数f(x)の、
-1≦x≦3
の閉区間を小区間に細分した各小区間での関数の値の和が一通りに定まるので、リーマン積分可能です。
この関数f(x)を積分して、以下の図の不定積分の関数F(x)を求めることができます。
この様な積分の解は上図のグラフの不定積分F(x)であらわせます。
 この関数F(x)は、x=0とx=2で微分不可能です。一方、原始関数は、定義域の連結区間内の全ての点で微分可能な関数です。そのため、その微分不可能な点x=0とx=2を定義域の連結区間内に含む関数は原始関数ではありません。この様な簡単なグラフの面積を求める問題であっても、変数xのあらゆる実数を定義域とする原始関数を使おうとすると、問題を解く事ができません。
 しかし、不定積分の部分として、定義域を連結区間0<x<2に狭くした原始関数を不定積分の定義域の一部に組み込んで使う事ができます。
上の関数の例では、全実数の定義域の一部の0<x<2の範囲を定義域とするf(x)に対して原始関数F(x)が存在します。それを不定積分に組み込みます。また、定義域が2<xの範囲の原始関数F(x)が存在します。また、定義域がx<0の範囲の原始関数F(x)が存在します。その3つの原始関数を連続につないで不定積分を作れば良いのです。

 被積分関数の1単位を、1つながりに連続する関数を単位にして考える。1つながりに連続する関数は正しく定義された連続関数です。その、1つながりに連続する関数を扱うのであれば、積分の計算で誤りに陥る事を防ぐことができます。

 その1つながりに連続する関数毎に積分する。
例えば、下図の関数f(x)を考える場合:
x<-1での1つながりに連続する関数と、
-1<x<1での1つながりに連続する関数と、
1<x での1つながりに連続する関数を、
別々の3つの関数と考えれば良いのです。

 そのように、関数全体を、均質な基本的な要素の関数に分割して、その基本要素だけに積分の公式を適用する。

【原始関数とは何か】(ここをクリック)
-----【原始関数の正しい定義】---------------
(原始関数の正しい定義は、1つながりに連続で、かつ、微分可能な関数F(x)をf(x)の原始関数と定義します)
すなわち、関数F(x)が、連結区間a<x<bのどの点でも連続、かつ、微分可能な関数であれば、F(x)を微分して導関数f(x)が求められる。この場合に、F(x)を関数f(x)の原始関数と言う。
(藤原松三郎の「微分積分学 第1巻」)
 すなわち、原始関数は連結区間における連続関数であり1つながりのグラフであると定義されています。
-------原始関数の定義おわり-----------------

【不定積分とは何か】
定積分の計算については、
連結区間a≦x≦b内の全ての実数の点で関数f(x)が連続であれば、すなわち、関数が1つながりで連続していれば、
いわば実用的原始関数と言える、1つながりの関数である不定積分F(x)を使って、以下の計算でその区間の定積分が計算できる。
連結区間a≦x≦bの全ての点で1つながりに連続な関数f(x)を積分すると不定積分F(x)が求められ、上式の右辺によって定積分が計算できるという定理(微分積分学の基本定理)があります。
 また、不定積分F(x)は、常に1つながりに連続な関数である。1つながりに連続で無い関数F(x)は不定積分では無く、1つながりに連続で無い関数F(x)に上の式の右辺を適用して定積分を計算すると間違った答えになります。

【間違った計算の例】
以下の図の関数F(x)を考える。


F(x)=C2, (x<0)
F(x)=C1, (x>0)
例えば、C1=1,  C2=2, とする。
この関数F(x)を微分して積分してみます。
先ず、微分します。
F'(x)= f(x)=0, (x≠0)
次に、このf(x)を積分します。
 ここで、関数f(x)が、変数xが定義される範囲が、連結区間内の全ての実数であること。その連結区間内の全ての実数の変数xで関数f(x)が定義されていなければ、その関数は(変数xの定義域とセットになっているのが関数です)積分してはいけません。
f(x)=0, (x>0) は積分できます。
f(x)=0, (x<0) も積分できます。
しかし、
f(x)=0, (x≠0) は、x≠0 の範囲でx=0の点ではf(x)が定義されていないので、その点をまたいで積分してはいけません。
 もし、それを無視して無理に積分すると、
∫F'(x)dx=∫0dx=C, x≠0,
という積分になりますが、
その結果の積分定数Cをどのような値に調整しても、それは、元の関数F(x)には決してなりません。
(「元の関数F(x), (x≠0) は、変数xで関数F(x)が定義されるxの範囲が、x=0が除外されていることで、そのxの範囲(定義域)が、連結区間内の全ての実数では無い関数でした。)
(また、F(x), (x≠0) は、1つながりに連続な関数では無いので、そのことからも、それは決して不定積分の結果の関数にはならないということもわかります)


(微分積分学の基本定理)による不定積分の定義
 関数y=f(x)が、 連結区間a≦x≦b の全ての点で連続とする。 その条件が成り立つならば、必ず、
関数f(x)を、それが連続する連結区間a≦x≦b
内で定積分(定積分はリーマン積分によって定義されます)することで、以下の関数S(x)が求められます。


(積分可能である)
そして、次のことが成り立つ。

(1)S(x)は、連結区間a<x<bで、
S'(x)=f(x)
になり、(正しい定義の)原始関数の1つである。

このS(x)の式はf(x)の不定積分の定義になっています。

上の式で積分して計算される不定積分S(x)は、定義域が、積分可能な範囲に限定されている結果、定義域が連結区間に限定されています。
そして、S(x)は、必ず、その定義域で1つながりに連続した関数になります。

(注意1)
 以下の関数f(x)は1つながりに連続な関数では無いので連続関数ではありません。
高校教科書の連続関数の定義:「関数 f(x) が、定義域のすべての x の値で連続であるとき、 f(x) は連続関数である。」は定義の言葉が足りていない。連続関数f(x)の正しい定義は、1つながりに連続な関数のことである。

この切れ切れのノコギリ状の関数f(x)を不定積分した関数F(x)を求めてみます。

ここで、関数値f(x)が定義されていないx=0.5の点等では、そのxの値の近傍までf(x)を積分して、その積分の極限値をx=0.5の点等での積分値に拡張する積分をしました。

この関数F(x)を微分すると、x=0.5, 1.5, 2.5等では、F(x)の微分係数が計算できません。
この関数F(x)は原始関数ではありません。
そうなる原因は、被積分関数f(x)が1つながりに連続では無いので連続関数では無かったから、(微分積分学の基本定理)の前提条件である、関数y=f(x)が、連結区間a≦x≦bの全ての点で連続である条件が成り立っていなかったからです。

 この不定積分S(x)の微分の計算については、
大学生以上になると、
積分の閉区間の端部x=a,bでも、
片側微分だけがあれば、微分可能であるとして、
微分係数が定義されています。

(2)F(x)を、連結区間a≦x≦b 上で1つながりに連続な関数f(x)の任意の不定積分=1つながりに連続する関数とすると、

が成立する。
この式では不定積分F(x)を使って計算するが、被積分関数f(x)が連結区間a≦x≦bで1つながりに連続な関数である場合は、この式に原始関数を使っても良い。
(定理の定義おわり)

 すなわち、この微分積分学の基本定理によって、
関数f(x)が連結区間a≦x≦b上で連続であるならば、
不定積分S(x)やF(x)が、f(x)のその範囲内の積分で計算する事で求められる事が保証されています。
 そうして計算して得た1つながりに連続する関数である不定積分F(x)を使って、
関数f(x)が連続である範囲の連結区間a≦x≦bでの定積分を、
F(b)-F(a)で計算できる事が保証されています。

【不定積分の定義の拡張】
関数y=f(x)の定義域が連結区間a≦x≦b
であるとする。
関数f(x)は不連続な関数であっても良い。
関数f(x)が、その定義域内で、積分の起点の変数値aを選んで、リーマン積分可能な範囲の変数値xまで以下の計算をする。
その計算の結果のS(x)がf(x)の不定積分である。
なお、不定積分S(x)は、以下の2通りの計算で得る両方の関数S(x)をつないで得る。
(1)
関数f(x)の定義域内で積分の起点の変数値aからxまで、ただし、x>aという値まで積分した関数S(x)。
(2)
関数f(x)の定義域内で積分の起点の変数値aからxまで、ただし、x<aという値まで積分した関数S(x)。
(3)
以上の2通りの計算で得る両方の関数S(x)をつないで得る関数が、不定積分S(x)である。
(4)
関数f(x)の積分の起点の変数値aの左右の方向へのxの積分可能な範囲が不定積分S(x)の変数xの定義域である。
(5)
不定積分S(x)の値は、積分の起点にする変数値aをどの値にするかによって、所定の定数Cが足された値にシフトする。ここで、全ての原始関数を不定積分が包含するように関数の定義を拡張するため、不定積分は、S(x)に積分定数Cを加えて、
S(x)+C
(Cは積分定数)とあらわす関数を再定義した不定積分にする。
再定義された不定積分は、全ての原始関数を包含する関数となる。また、積分定数Cの値によって関数の値を自由に増減できる扱いやすい関数になった。 

(注意)再定義された不定積分と積分定数Cについての注意事項は、ここをクリックした先のページを参照のこと。

(6)不定積分は、1つながりに連続な関数になる。
 不定積分は、連結した定義域で1つながりに連続な関数です。これは、積分可能の条件を緩めた広義積分であっても変わり無く、逆に、不定積分が1つながりに連続する範囲を、広義積分における積分可能な範囲にしています。



(7)連結区間で1つながりに連続なグラフの関数f(x)の不定積分F(x)は、その連結区間で1つながりに連続、かつ、微分可能で、F’(x)=f(x)になる。
ここで、任意の値の積分定数Cを不定積分に加えることで、F’(x) = f(x)になる関数(原始関数)を全て含んだ関数として不定積分が定義されている。
(不定積分の、積分する区間a→xでの積分の起点のaの値を任意に変えるだけでは、積分の値を任意の大きさまで変える事ができない場合がある。その問題を補って、任意の値の積分定数Cを加えることにし、原始関数も包含するように不定積分の定義が修正されている。)


(8)不定積分は、微分したとき、大部分のxで被積分関数f(x)と一致する。有限個の点で、微分がf(x)と一致しないでも良い。それらの点でのf(x)の値が無限大で無い有限の値の場合は、その点の積分への寄与が0であるからである。
 不定積分F(x)の微分がf(x)と一致しない点は、例えばF(x)が折れ曲がり微分不可能な点などである。
(9)不定積分F(x)は、連結区間を定義域とする1つながりに連続な関数の真の原始関数を複数、y方向に平行移動させて連続につないで作る事ができる。

(ここをクリックした先のサイトに不定積分の定義についての以下の注意がある)
「原始関数のことを不定積分と呼ぶこともあり、「不定積分」なる用語の定義は統一されていない。

したがって、「不定積分」なる用語を用いる場合には、それが何を指しているのかを、筆者自身で読者に対してその都度つまびらかにしておく必要がある。このあたりの事情については、小平『解析入門I』165を見よ。


-----【積分の特徴】---------
 積分は、関数f(x)のグラフの面積を求める計算です。グラフの多くの部分の総和の面積を求めるものです。そのため、グラフの微小な一部分の過不足があっても総体の面積に対する影響はわずかです。例えば、グラフの1点の値f(0)が何であっても(ただしf(0)が無限大で無ければ)、総体の面積に対する影響は0であると言えます。
 そのため、積分では、グラフの微小部分には注目しないで不定積分F(x)を計算します。

 そのため、被積分関数f(x)の不定積分F(x)が、以下のような物であっても、問題にしません。
例えば以下の式の様に、
x=0で不連続な関数f(x)について:
(例えば、f(0)=0,x>0でf(x)=1)
大学以上になると、閉区間の端点x=0において、不定積分F(x)の右微分係数F’+(0)が存在すれば、それをその端点x=0の微分係数であると定義しています。

上の例の不連続関数f(x)の不定積分F(x)の場合は、
F’+(0)=f(0+)(=右側のf(x)の極限)=1
でF(x)の端点x=0での微分係数の値が1になります。
しかし、その微分係数は、元の関数f(0)=0にはなりません。
そのため、得られた、0≦x≦2を定義域とする不定積分F(x)は被積分関数f(x)の原始関数ではありません。
(ただし、原始関数の定義域を狭くすれば、0<x<2を定義域とした関数F(x)はその定義域のf(x)の原始関数である事に注意すること)

(積分の本質)
 しかし、このことが問題だと考えるのは、積分の本質から外れた発想です。
積分の目的は、不定積分を求める事であって、原始関数を求める事では無いのです。

本当の数学では、使えそうに思った原始関数を試しに微分してf(x)の一部分と比較して、一部分が一致すれば、
その一致した部分を定義域にした原始関数を不定積分F(x)の一部分の定義域に使って、不定積分F(x)の全体の定義域の関数を求める助けにしているだけなのです。

積分の特徴は、
不定積分F(x)の微分によってf(x)の1点であるf(0)が再現できないという不定積分であっても、その不定積分F(x)を使って被積分関数f(x)の定積分を計算するには支障がありません。
そういう不定積分の関数F(x)をf(x)に対して求めるだけで充分なのです。
 

そういう、微分して変数x=0という
1点のf(0)が得られないが、その他の大部分のxでf(x)が微分によって得られる元になる不定積分F(x)を求めれば、それで良いのです。

上図のグラフのf(x)の積分をしようとして、原始関数が得られないから答えが出ないというのは、あまりにお粗末な解き方と思います。
上図のf(x)の原始関数が得られなかったのでは無く、f(x)の定積分に使える不定積分F(x)の解が得られたのです。

不定積分F(x)は、いわば実用的原始関数と呼んで良いと考えます。

なお、原始関数F(x)の定義は、連結区間を定義域にする関数であって、F’(x)=f(x)となり、
その連結区間の全てのxにおいてf(x)が存在する関数です。

しかし、実用的な原始関数と言える不定積分F(x)は、上の式が大部分のxで成り立つだけで良く、端点などのf(x)の連続で無い点では成り立っていなくても良いのです。そのため、F(x)の微分によってf(0)が求められ無くても実害がありません。
 求めるべきなのは不定積分F(x)(=実用的原始関数)です。そのF(x)の定義域の大部分のxでF(x)の微分がf(x)になれば良く、積分への影響が0である数点のf(x)の値との不一致は無視します。


 大学生以上では、以下の様な拡張された微分の定義が使われます。
閉区間で1つながりに連続な関数F(x)を閉区間の端点で微分可能とする拡張された微分の定義が、
小平邦彦「[軽装版]解析入門Ⅰ」の112ページに記載されています。
「閉区間の端点で関数F(x)が片側微分可能であれば、その片側微分を端点での微分係数と定義しています」

実際、端点以外ではf(x)を再現できるという確認ができた不定積分F(x)が、閉区間の端では、この定義の微分により、連続関数f(x)のf(0)も再現できる。
f(x)が連続関数である場合に限って、不定積分F(x)が原始関数であるという説明がされています。


 この微分の定義「端点で関数F(x)の微分を片側微分係数で定義する」は大学生以上で使われています。
------積分の特徴おわり-------------

 微分積分学の基本定理によって、関数f(x)が連結区間のa≦x≦b上で1つながりに連続であるならば、
不定積分関数S(x)やF(x)が、f(x)のその範囲内の積分で計算する事で求められる事が保証されています。
 そうして計算して得た不定積分F(x)を使って、
被積分関数f(x)が連続である範囲のa≦x≦bでの定積分を、
F(b)-F(a)で計算できる事が保証されています。

 微分積分学の基本定理の登場により我々に注意が喚起されたメッセージは、
『関数f(x)の積分を計算しようとする場合には、その積分区間における関数の性質(連続である等)を調べなければならない』
というメッセージです。
不定積分を用いて定積分を計算する演算の際に、その定積分の積分区間における関数の性質を調べる事を欠かしてはならない、というメッセージです。

(積分可能な例1)
 関数を積分する区間は、
a≦x≦b
というように、その積分の区間の両端が存在する区間で積分します。
すなわち、
a<x<b
というような、両端が存在しない区間では積分しません。
 例えば、以下の図の、x=0で連続で無い関数f(x)は、その連続で無い点以外の変数xの連結区間内で1つながりに連続です。その連結区間内で、この関数f(x)が連続関数であると定義されます。
(積分が可能な範囲)
上図の関数では、
x=0の近くの、0<x≦bの範囲内のx=δの点から積分し、例えば、
δ≦x≦b
の範囲で積分します。

(注意)連続関数とは、ある関数f(x)の変数xの所定の範囲内で関数f(x)が連続である、という関数f(x)の範囲のことです。

(積分できない例)
 上図の関数の事例では、x=0の点では関数f(x)の値が-∞になり、関数が定義されていないで、関数が不連続です。そして、この関数では、x=0を含んだ範囲で積分することはできません。被積分関数は、1つながりに連続している関数を1つの単位にしているからです。
上図の関数を、上図の様にx=0を含む区間で定積分したら、マイナスの無限大になるので、積分が不可能です。
上図の関数を、例えば-1から1までの区間で積分する事も不可能です。

これを無視して、関数f(x)の連続で無い点を定積分の範囲内に入れてしまうと以下の間違いをおかします。
F(x)=1/xをxで微分したら

になる。
この関数
は、x>0とx<0との範囲の2つの単位の被積分関数になります。そのため、それぞれの範囲内での積分しかできません。xが-1から1までの区間で、
  F(1)-F(-1)=1-(-1)=2
という 計算で積分すると、明らかに間違えます。


高校で教えられていない必須作業の、関数f(x)が定積分の区間で連続か否かのチェックをしないで、
積分の計算をすると、上の計算の例の様に、
間違った答えになります。 

 なお、微分積分学の基本定理に記載されている、
という式で定義された関数S(x)は不定積分であって、1つながりのグラフになります。
実際、被積分関数

に対して、上の式により:
a>0の場合には、x>0の範囲の定義域だけの関数
S(x)=1/x, (x>0)

だけが得られます。この定義域で1/xは1つながりの連続関数です。
a≦b<0の場合には、x<0の範囲の定義域だけの関数
S(x)=1/x, (x<0)
だけが得られます。この定義域で1/xは1つながりの連続関数です。

a=0の場合には、S(x)が計算できません。
この積分の式で定義される(定義可能な)不定積分

は必ず1つながりに連続な関数です。

(不定積分に積分定数Cを加える事)
 不定積分S(x)の値は、積分の起点にする変数値aをどの値にするかによって、所定の定数Cが足された値にシフトする。
ここで、関数f(x)が:
f(x)=0
という場合を考えます。
この関数f(x)を、
f(x)が定義されている区間における、
a≦x≦b
の範囲で、aの値を変えて、S(x)を計算してみます。
すると、常に、
S(x)=0
となってしまい、この計算で得た不定積分には、aを変えても値が変わらず、積分定数Cのような値のバラエティがあらわれません。

不定積分の定義(5)では:
全ての原始関数を不定積分が包含するように、不定積分の定義を拡張する。
そのため、不定積分は、
 f(x)=0
の場合であっても、
S(x)に積分定数Cを加えて、
S(x)+C
(Cは積分定数)とあらわす関数を、
不定積分と定義し直します。

 こうして、不定積分は、全ての原始関数を不定積分が包含するように、最初に定義した関数に積分定数Cを加えた関数に拡張されています。

再定義された不定積分は、積分定数Cの値によって関数の値を自由に増減できる扱いやすい関数になった。 
(定義5の説明おわり)

詳しくは:「不定積分の積分定数Cの扱い」のページを参照のこと。

 (積分定数Cの扱い)
 このように、不定積分が定義5で再定義されていますが、不定積分の正しい計算は、定義5で再定義された不定積分を、その前の純粋な不定積分
に戻して考えた場合にも成り立つ計算が正しい計算であると考えます。

不定積分の再定義(5)の副作用として生じた以下の誤りに陥らないように注意する必要があると思います。

 不定積分同士の引き算:
として、F(x)-F(x)=Cとして解く解き方がしばしば使われています。
しかし、それは、誤った解き方だと考えます。
不定積分同士の引き算の式:
は、公式と言うよりは、不定積分の計算のあいまいさを表す式と考えます。この式を使わないで解く解き方、すなわち、F(x)-F(x)=0として解く解き方が、正しい解き方であると考えます。

F(x)-F(x)=Cとする式は、
一旦は、不定積分の計算のあいまいさゆえに、計算が分からない事を表現したものと解釈します。
 計算が分からないので、F(x)-F(x)=Cとした式を得ただけと考えます。

その式が得られたら、
0=F(x)-F(x)=C
という正しい等式を成り立たせるために、C=0にし、不定な値Cを確定させるべきと考えます。

0=C,かつ,C≠0
とするような矛盾を持ち込むべきでは無いと考えます。

そのため、以下の様な計算は間違っていると考えます。
以上の計算では、計算の途中で(等式を成り立たせる)不定積分の解釈を変えて、その値を変えてしまっているので、間違いであると考えます。

 そもそも、不定積分を部分積分で計算するときには、以下に示す、正確な部分積分の公式を使わなければなりません。

ここで:

(注意)この式1が正しい部分積分の公式ですが、普通は部分積分の公式に付随する第1の積分定数C1は省略して書かない(この第1の積分定数C1は、残った不定積分の項を積分したときに出て来る第2の積分定数Cとは異なるものです)。しかし、問題を正しく解くためには、この公式の第1の積分定数C1を省略できない。

(積分定数Cの扱いの説明、おわり)

(積分可能条件の注意)
 高校生が覚えておくべき積分可能条件は、
関数f(x)が1つながりに連続な範囲内で積分するならば積分可能性が完全に保証され、
そうでないときは間違った答えが得られる事がある事 
を覚えておいてください。

 なお、微分積分学の基本定理が積分可能性を完全に保証する条件であるf(x)が積分区間で連続でなければならないという条件は、緩める事ができ、f(x)の不定積分F(x)が1つながりに連続であるだけで良いということが分かっています。(これについては後で詳しく説明します)

 原始関数を用いて定積分を計算する演算の際に、その定積分の積分区間における関数の性質(原始関数F(x)の連続性、又は、被積分関数f(x)の連続性)を調べる事を欠かしてはなりません。原始関数F(x)の連続性を調べるという事は、その関数F(x)が不定積分であるか否かを調べているのです。

(必ずある間違い)
以下の関数の不定積分があります。
この被積分関数が1つながりに連続な範囲は、
x>0 か、
x<0 か
の2つの範囲です。
単に(1/x)と表した被積分関数は2つの連続関数をいっしょくたにしてしまっています。
各連続関数毎に、別々に不定積分して関数の解を得なければなりません。
不定積分の解は、それぞれの連続関数に応じて2つあり、上記の式のように2つの式で表さなければなりません。
 しかし、高校数学では、その2つの不定積分を以下の式で1つの式で表して教えています。
 これは、2つの別々の連続関数をいっしょくたにした関数なので、もはや1つながりに連続な関数では無く、不定積分ではありません。
不定積分は1つながりに連続でなければなりません。
明らかな間違いですが、これが「不定積分を求めよ」という問題の解として教えられているので要注意です。

(大学生の正しい解答)
表現の煩雑さを避けて、
(解答おわり)

この式の右辺は不定積分では無いので、その式をF(x)と表して、それを定積分に適用して、
-1から1までの定積分として、
F(1)-F(-1)
を計算するのは間違いです。
(高校生は、上記の間違った不定積分を教わり、それを、上記の、不定積分と定積分の関係式に代入して間違った答えを得ます。高校生は(先生にも)、どこが間違っているか分からず、微分積分が分からなくなる高校生が多いのではないかと思います。) 

積分結果が1つながりに連続している正しい不定積分のグラフが連続するxの範囲のみ、が定積分が可能な範囲です。

(関数が1つながりに連続な範囲で積分可能な例) 
以下の図の、1つながりに連続な関数f(x)を考えます。

この関数f(x)の不定積分として以下の関数F(x)が考えられます。

この不定積分F(x)の求め方は:
x>0での関数f(x)の原始関数を求め、
x<0での原始関数を求め、
2つの原始関数を、独立にY方向に移動させて連続するようにつなぐ事で
総体の、上の図の不定積分F(x)が求められます。
 この不定積分F(x)をxで微分すれば、xがどの値であってもf(x)になるので、この関数F(x)は関数f(x)の原始関数でもあります。この関数f(x)が1つながりに連続な範囲のx=aからbまでの定積分は、
不定積分F(x)を使って、
F(b)-F(a)
で計算できます。

(研究課題)
ここで、
関数f(x)が、
の場合に、
その変数xの
x=−∞の点とx=∞の点が1点であって、
その点で変数xの区間が連結しているものと定義する。
そして、x→0の点は、変数xの連結区間の端点とした、
変数xの連結区間を定義する。

そして、関数f(x)は、
x→ ±∞の点で値f(x)=0であるので、その点でも連続していると定義し、
x→ ±∞の点を含む連結区間で1つながりに連続した関数であると定義できます。

(その様に、2つの関数をx→ ±∞の点で連結して1つの関数にすることは、置換積分法などで関数の変数を変換する場合に、自然に起こり得る事です。)

この関数f(x)の、
a<0と、
b>0との
2点の間の定積分を、
不定積分F(x)を使って、
F(b)-F(a)
という値であらわすと、
その定積分は以下の様に定義できます。

先ず、
x=aの点から、x=−∞まで
f(x)を定積分して、
続けて、
x=−∞の点から、x=bの点まで、
f(x)を定積分する。

すなわち、そのように、変数xのx=aからx=bまで連結した区間の経路で関数& f(x)が積分でき、
その経路の積分範囲で定積分した値が、
F(b)-F(a)
であると定義できます。

すなわち、
x=0をまたいで積分したりせずに、
x→ ±∞の点を経由した
迂回した経路で積分した積分結果が、
F(b)-F(a)
であると解釈します。

そう解釈するならば、
F(b)-F(a)は、
定積分の値を正しくあらわしています。

 このように、関数f(x)の定積分を、連結区間内からはみ出す部分がない経路で積分した値であると認識すれば、
F(b)-F(a)は、
その定積分の値を正しくあらわす式であると解釈できます。
 定積分を計算する演算の際に、その定積分が可能な積分区間が、被積分関数f(x)の値が有限値であるxの点を連結した区間に限られると認識するのが良いと分かりました。
(なお、その連結区間で、不定積分F(x)は1つながりに連続な関数になっています。) 
(研究課題おわり)

(積分が完全に保証される積分可能条件の外で行う例)
 微分積分学の基本定理における積分可能条件(関数f(x)が積分範囲内で1つながりに連続な関数でなければならない)にあえて違反して行う以下の積分では、被積分関数f(x)がある点で連続な連続関数である場合と、その関数の1点の関数値が存在しない(あるいは0等の値になる、その点では不連続な関数である)場合とが区別されずに、その範囲を積分した不定積分が同じ1つながりに連続な関数になる。

(積分可能な例2)
以下の図の関数f(x)のグラフを考えます。

この関数は、x=0の点での極限とx=2の点での極限が存在しません。
x=0の点とx=2の点で関数は不連続であり、また、極限も存在しませんが、
-1≦x≦3
の閉区間をリーマン積分により小区間に細分した各小区間での関数の値の和が一通りに定まるので、その連続で無い点を範囲内に持つ区間で(1つながりに連続な連続関数ならば必ず積分できるという積分保証範囲の外で無理やりに)あえて積分すると積分可能です。
この関数f(x)を積分して、以下の図の不定積分の関数F(x)を求めることができます。

(原始関数を利用した不定積分の求め方)
 この不定積分F(x)の求め方は、上図の関数f(x)の:
-1<x<0の区間のf(x)に対する原始関数 F(x)=0と、
0<x<2の区間のf(x)に対する原始関数 F(x)=xと、
2<x<3の区間のf(x)に対する原始関数 F(x)=C2とを求め、
それらの原始関数をY方向に平行移動して連続につなげば、以下の1つながりのグラフの不定積分F(x)が出来上がります。

この不定積分F(x)を微分して下図のグラフの関数を求めます。
x=0とx=2の点ではグラフが折れ曲がっているので微分できません。

この不定積分F(x)を微分した結果の導関数(dF(x)/dx)は、x=0とx=2で関数値が存在しないという点で、関数f(x)と異なる関数になるという特徴があります。

 原始関数の定義の発想の順番は、F(x)を先に考え、次にf(x)を考えるのです。
(先ず、連結区間を定め、その連結区間内で1つながりに連続した原始関数F(x)を考え、次に、それを微分して関数f(x)が得られ、結果として得られたf(x)の原始関数がF(x)であると呼ぶのです。)

 この発想の順を逆にしてf(x)に不定積分の関数F(x)を対応付ける写像変換を定義する事はできます。
 上の図で得た導関数(dF(x)/dx)は、x≠0とx≠2の範囲でのみ定義されている関数です。そのグラフはf(x)とは、変数x=0とx=2の点だけが異なります。

 この導関数(dF(x)/dx)のグラフを再度積分したらどうなるでしょうか。
その積分結果は、再び同じ不定積分F(x)が得られます。
 (ただし、関数値f(x)が定義されていないx=0と2の点では、そのxの値の近傍までf(x)を積分して、その積分の極限値をx=0の点等での積分値に拡張する積分をしました。)

変数x=0での点とX=2での点の有無で異なる2つのグラフ、すなわちf(x)と、導関数(dF(x)/dx)を積分したら、同じ不定積分F(x)が得られました。
そのため、被積分関数f(x)に積分結果の不定積分F(x)を対応させる写像変換は、
2個以上の関数の、f(x)と(dF(x)/dx)とに1つの不定積分F(x)を対応させる、
複数対1の写像であると考えられます。

(注意)
 ちなみに、微分不可能な点がある関数F(x)は真の原始関数ではありません。(真の原始関数は必ず1つながりに連続で、すべての点で微分可能な関数です。また、所定の定義域の関数f(x)では原始関数が無くても、定義域を狭くした範囲では原始関数がある事も忘れないよう注意してください。)
 上の例の不定積分F(x)、

すなわち、x=0の点とx=2の点で折れ曲がって微分不可能な点を持つ関数F(x)は、
関数f(x)からx=0の点とx=2の点を除外した関数が微分の結果で得られる不定積分です。
この不定積分では原始関数より広い範囲の関数が扱え、上図のようなグラフの面積を求めることもでき実用的です。

(厳密に考える1)
 ここで、厳密に考えると、
不定積分F(x)を微分すると、x≠0とx≠2の範囲でのみ関数値がある導関数(dF(x)/dx)が得られました。そのため、関数F(x)は、x≠0とx≠2の範囲でのみ定義されている導関数(dF(x)/dx)の不定積分でもあります。
一方、x=0で、f(0)=1であり、x=2で、f(2)=1である最初の関数f(x)は、不定積分F(x)の微分によっては、x=0での点とx=2での関数値が得られません。
しかし、f(x)を定積分するために利用する関数としては、この不定積分F(x)で十分です。

小平邦彦「[軽装版]解析入門Ⅰ」の182ページにも、不連続な関数f(x)の広義積分=不定積分F(x)が1つながりの連続関数で得られることが書いてあります。
 また、 F(x)を微分して不連続な関数f(x)が得られる原始関数F(x)もあり得るが、それは、原始関数F(x)が微小に振動している場合という限られた場合だけです。
小平邦彦「[軽装版]解析入門Ⅰ」の126ページには、
上図の様に、普通の連続で無い点を持つ関数f(x)の不定積分F(x)につては、その連続で無い点のx=0やx=2の点では、そのxの値で微分できないと書いてあります。
すなわち、上図におけるx=0やx=2の点のように有限の値の高さに段差を持つ連続で無い点を持つ関数f(x)には、その連続で無い点で微分できる原始関数F(x)は存在しないと書いてあります。
 その様に原始関数が無くても不定積分が存在することが、小平邦彦「[軽装版]解析入門Ⅰ」の182ページに書いてあります。
不定積分F(x)においては、その不定積分F(x)を微分した関数が、被積分関数のf(x)からx=0やx=2という有限個の点を除いた大部分の点で関数f(x)と一致するだけで良い事が書いてあります。

 そのように、原始関数の場合は細かい注意が必要でしたが、広義積分を含めた不定積分の場合は、堂々と、不連続な関数f(x)の多くが積分可能であり不定積分F(x)を持つので、細かい注意に神経を使う必要も無くなり、積分がやり易くなりました。


(厳密な考察2から4)
 下図の3つの被積分関数f(x)の不定積分F(x)は同じ関数になります。これを以下で考察します。

(厳密に考える2)上図の左上の場合
0≦x≦2の定義域でのみ定義され、その定義域内で常にf(x)=1となる関数f(x)を考えてみます。
この関数f(x)は閉区間で1つながりに連続な関数です。
この関数f(x)を積分して得た不定積分F(x)は、
0≦x≦2の閉区間の定義域で定義される、F(x)=x
という関数になります。
1つながりの連続関数であるF(x)は、その端点x=0とx=2では、片側微分係数で微分係数が定義され、x=0とx=2との点ではF'(x)の値があります。例えば以下の式の様に:

不定積分F(x)はf(x)の定義域の端のx=0で片側微分可能です。
x=0でもx=2でも、f(x)=1である関数f(x)は、不定積分の関数F(x)の片側微分によって得られます。
そのため、この不定積分F(x)は、f(x)の全ての関数値をF’(x)の結果として与える原始関数です。

(厳密に考える3)上図の右上の場合
0≦x≦2の定義域でのみ定義され、その定義域内で、
x=0で   f(x)=0
0<x<2で f(x)=1
x=2で   f(x)=0
となる関数f(x)を考えてみます。
その関数f(x)を積分して得た不定積分F(x)は、
0≦x≦2の定義域で定義される、F(x)=x
という関数になります。
この不定積分で得た関数F(x)は、
f(0)=1となる関数f(x)の不定積分で得た関数と同じ関数になるので、f(0)=0という情報が失われた関数である事が明らかです。
このF(x)からは、f(0)の値=0が再現不可能である事が明らかです。
F(x)は、定義域の閉区間の端点で片側微分可能で、端点x=0とx=2での微分係数=1が計算できますが、その値は、f(0)及びf(2)とは異なります。
このように、不定積分F(x)の微分によっては、x=0での点とx=2でのf(x)の値は得られません。この不定積分F(x)は、不連続な関数f(x)の全ての関数値をF’(x)の結果として与える原始関数ではありません。
 このF(x)をこの例の不連続な関数f(x)の原始関数と呼ぶのは不正確ですが、このF(x)はf(x)の不定積分である事には間違いありません。

(厳密に考える4)上図の左の場合
0≦x≦2の定義域でのみ定義され、その定義域内で、
x=0で   f(x)=2
0<x<2で f(x)=1
x=2で   f(x)=2
となる関数f(x)を考えてみます。
その結果は、(厳密に考える3)と同じ結果になります。

(積分可能性が保証される条件とは)
 上図の場合では、関数f(x)が不連続な点があっても積分できました。これは、以下の条件を満足したからです。
関数f(x)が積分可能な条件は、

関数f(x)の積分区間で、f(x)の不定積分F(x)が連続であることです。
関数f(x)を積分する区間は、不定積分F(x)が1つながりに連続な範囲の、例えば、
a≦x≦b
という区間で積分が可能です。

(この様に不連続関数f(x)にも積分可能性が保証される条件については後で説明します。)

(不連続関数f(x)の無理やり積分と、その微分の例)
 関数f(x)を:
変数xが整数の点では関数値が存在せず、
変数xが整数以外の点では値が1、
である不連続関数とします。

(上図において、関数f(x)の連続で無い点である、変数x=整数での関数f(x)の極限値を、その変数xの位置での関数f(x)の値にして連続で無い点を除去すれば、関数f(x)=1となる連続関数になります。)
 この不連続関数 f(x)のグラフを積分したら、
1つながりに連続な不定積分 F(x)=xが得られます。

ここで、関数値f(x)が定義されていないx=0の点等では、そのxの値の近傍までf(x)を積分して、その積分の極限値をx=0の点等での積分値に拡張する積分をしました。

この不定積分F(x)=xを微分したら、
連続関数であるf(x)=1が得られます。
この不定積分F(x)=xは、それを微分して得られた関数f(x)=1の原始関数です。

 上図のf(x)及びf(x)を積分した結果の不定積分F(x)では、被積分関数が連続関数f(x)である場合と、その連続関数のxが整数の点の関数値が存在しない(あるいは0等の値になる)不連続関数f(x)である場合と、が区別できません。
この様に、積分すると、被積分関数の連続で無い点の情報を失った不定積分F(x)が得られます。

(積分可能な例3)
(注意)
 原始関数のF(x)が連続で微分可能でF'(x)=f(x)であっても、f(x)が連続関数になるとは限らないことに注意が必要です。F(x)が連続で微分可能であっても微小に振動している場合があるからです。
 以下で定義する原始関数F(x)を微分して得た関数f(x)は、
F(x)の微分で作られたので、積分可能です。
(F(x)の定義)
x≠0の場合:

x=0の場合: F(0)=0,

(導関数f(x))
この原始関数F(x)はx≠0の場合も、x=0の場合も、微分可能で、
その導関数f(x)は、以下の式であらわせます。
x≠0の場合の微分:

になり、xが0に近づくと-1と1の間を振動します。
この導関数が含むcos(1/x)の関数が以下のグラフであらわす形の関数になるからです。

X=0の場合にも、F(x)は微分可能で:

というように、0になります。
このように、x=0の場合の導関数f(x)は、x=0で不連続ではありますが、f(0)=0という値を持ちます。

この導関数f(x)は、x=0で不連続ですが、x=0で関数値を持ち、積分すると原始F(x)になる、積分可能な関数です。
しかも、その積分結果の原始関数F(x)を微分すると、元の、x=0で不連続な関数f(x)が得られます。

(積分可能な例4)

上のグラフは、不連続な関数f(x)のグラフですが、無理やり積分して積分可能なグラフの例を示しています。

 上の図の関数f(x)がリーマン積分可能なのは、変数xの全区間の部分区間毎です。
第1の部分区間:
-∞<x<A
第2の部分区間:
A’<x≦C
(点Aで関数は不連続であり、また、極限も存在しませんが、
-∞<x≦C
まで合わせた区間でも、関数の区間を細分した各小区間での関数の値の和が一通りに定まるので、その連続で無い点Aを範囲内に持つ区間でも積分可能です。)

(点Bでは、関数が無限大になるので積分ができません)
第3の部分:
D≦x<+∞

(注意1)
 リーマン積分では、点A’から点Dまで、関数f(x)の値が無限に大きくなる点Bを範囲内に持つ区間で関数f(x)を積分することができません。
その理由は:
無限に関数値が大きくなる点Bを積分の範囲内に持つと、その点Bを中に持つxの小区間で、
細分の幅Δxがどれだけ小さな値であっても、
(1/Δx)≪f(ξ)
となる関数値f(ξ)を選ぶことができるからです。

そういう関数値f(ξ)を選んでしまうと、関数値の総和が定まらなくなってしまうからです。

(注意2)広義積分
 しかし、上図の関数f(x)は、B点の左側の区間で、X=A’からx=Cまでの積分の値の、Cを無限にBに近付けた極限の有限の値を持つものとします。
また、B点の右側の区間で、X=DからX=+∞までの積分の値の、Dを無限にBに近付けた極限の有限の値を持つものとします。
「そのように左側の区間のC点及び右側の区間のD点をB点に近付けた極限での積分の値が存在するならば、
B点の左側の区間の積分値と、B点の右側の区間の積分値の和を、点Bを範囲内に持つxの区間での積分とする(広義積分)」
と言うように、関数f(x)の「積分可能性」の定義を拡大することができます。

また、グラフが積分可能な範囲は、変数を置き換える置換積分によって、変数を変え、被積分関数の形を変えると、
積分可能な範囲が変わることがあります。

例えば、
関数f(x)≡1/ -x
は、xが-1から0未満の数までの範囲で積分可能ですが、
xが-1から0までの範囲では、x=0に近づくと被積分関数の値が無限に大きくなるので積分可能ではありません。


しかし、
新たな変数t≡- -x
を使って、変数tで積分する式に変換する(置換積分)と、
以下の図の様に、被積分関数が定数2に変換されます。
そのため、その場合は、 xがー1から0までの範囲に対応する、
tが-1から0までの範囲で、「積分可能」に変わります。
そのように、積分可能な変数の範囲は、変数を変換すると変わることがあります。 

また、この関数f(x)に対して以下の図のグラフの不定積分F(x)を考えてみます。
(不定積分の求め方)
 この不定積分の求め方は、上図の関数の部分毎に原始関数=不定積分F(x)を求め、それらの不定積分を、連続になるようにつなげば、以下のグラフのように、総体の不定積分が出来上がります。
定義域x<0の関数f(x)の原始関数の-2 -x と、
定義域x>0の関数f(x)の原始関数2
を独立にY方向に平行移動させて、x=0で連続につないで不定積分を求めます。
 この不定積分F(x)は、不定積分が、被積分関数F(x)の定義域のx<0だけで定義されることになるのが気持ち悪かったので、被積分関数f(x)のx>0の範囲を勝手に定義して、その全体の不定積分を作りました。関数f(x)の部分毎に作った原始関数を、連続につないで総体の不定積分を作りました。


このグラフの不定積分F(x)を微分してみます。

この不定積分F(x)は、1つながりの連続関数であって、
また、x=0以外の点で微分するとf(x)になります。
この不定積分F(x)が1つながりに連続な変数xの範囲では、関数f(x)が積分可能です。
(その理由は、以下で、藤原松三郎の「微分積分学 第1巻」を解説して説明します)

そして、関数f(x)の定積分は、
不定積分F(x)が1つながりに連続な範囲の:
a≦x≦b
の区間では定積分でき、その定積分の値は:
F(b)-F(a)
で計算しても良いです。
関数f(x)が積分可能な条件は、f(x)の不定積分F(x)が、f(x)の積分区間において1つながりに連続である事です。

このように、積分可能の条件が広くされました。


----(補足)------
また、-1≦x<0で定義された
関数f(x)≡1/ -x
の定積分を計算する場合に、上図の不定積分F(x)の他に以下の図の様に不定積分F(x)と、それを微分した関数f(x)を考えて、それらの定義域を、元の関数f(x)の定義域にまで縮小して考えても同じことになります。
 つまり、被積分関数f(x)のx>0の範囲に接続する勝手な関数を別の関数に変えて、その全体の不定積分を作りました。関数f(x)の全体の定義域の部分の定義域毎の原始関数を、連続になるようにつないで総体の不定積分を作りました。

この関数F(x)は、x=0で連続な1つながりな連続関数です。
この関数F(x)を微分すると以下の関数f(x)になる。

そのため、F(x)は、そのf(x)の不定積分です。
この不定積分F(x)の定義域を、
x≦0
にすれば良い。


 ここで、x<0で定義される被積分関数f(x)に、x>0で定義される勝手な被積分関数f(x)を加えて、被積分関数f(x)を、その定義域を広げた異なる関数に変えて、その全体の不定積分F(x)を作りました。そして、最終的に、その不定積分の定義域は削除するので、X>0の定義域の不定積分は、気休めに加えたものにすぎません。
 ただし、いずれの作り方で作るにしても、不定積分F(x)の定義域はx≦0にでき、被積分関数f(x)の定義域はx<0ですので、不定積分F(x)の定義域の方が被積分関数f(x)の定義域よりも広く作れました。 
----補足おわり--------

これらの事については、数学者の藤原松三郎の「微分積分学 第1巻」が、
連結区間a≦x≦b内で定義される関数f(x)が、その連結区間内に有限個の連続で無い点を持つ関数f(x)である場合に、

その区間a≦x≦bでのf(x)の積分を広義積分と呼び、
関数f(x)の不定積分F(x)が求められて、
関数f(x)の積分範囲
a≦x≦b
内で不定積分F(x)が(端点では片側連続である)1つながりに連続な関数ならば、

(その積分範囲内にF(x)が微分不可能な点、それは被積分関数f(x)が連続で無い点、があっても良い)、
(1)それは、不連続関数f(x)が積分可能である証拠であり、
(2)以下の計算で定積分を計算して良い事が書いてあります。
F(b)-F(a)
よって、
不連続な関数f(x)に対して、

その定義域を、関数f(x)の連続で無い点を除外した連結区間に分割し、
それら各連結区間毎に原始関数を計算し、
得られた各原始関数を連続につないで不定積分を構成します。
その1つながりに連続な不定積分を使って上の式で定積分を計算して良いのです。

また、小寺平治・著「はじめての微分積分15講」(2,200円)の103ページにも、このことが書いてあります。

小平邦彦「[軽装版]解析入門Ⅰ」の182ページにも、このことが書いてあります。

《(外部リンク)置換積分等の積分の計算に潜んでいる広義積分》

《(外部リンク)変な積分》


リンク: 
高校数学の目次

0 件のコメント:

コメントを投稿