- ベストアンサー
f(x)の役割について
- f(x)は2xによって変換される値として置かれている
- f(x)は値であり、xの関数であることを示している以外に何か意味を持ってますか?
- fは写像としての役割を果たしているので、ある値を2倍しているのはfであるとも言える
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
私自身は「f(x) という記号が関数の機能を持つ」と言った覚えはありません. 一方,「『f(x) という記号が関数の機能を持つ』という言明は誤りだ」と言った覚えもありません. また,#1さんの回答について,正しいとか誤りとかの評価を下した覚えもありません. そのうえで,私は, -------- 『f(x) という記号が関数の機能を持つ』ことを示唆する記述が多くの教科書にみられることは事実. しかし,その流儀には「f(x) が指すのが関数か値かはっきりしない」という欠陥がある. そのため,その流儀はあまり推奨できない. 教科書の立場は過去の(必ずしも合理的でない)慣習を引きずったもので,それを「正しい」と思い込まないほうがよい. -------- と,自分の立場を表明しています. これ以上,何をどう答えろというのですか? 「f が関数なのか,f(x) が関数なのか?」という問いは,数学に関わる人々の間でも見解が統一されていなくて,だれかの一存で正解を決定できるような問いではないのです. この問いについて「唯一絶対の『権威ある正解』が存在して,誰かがそれを知っていて,教えてくれる」ことを期待しているとしたら,それは無理です. 回答者にできるのは 「現実の記号の使われ方はこんなふうだ」 「私はこういう立場をとる」 ということを語ることだけです. その回答をどう理解し,当初の疑問にどういう「自分なりの納得のしかた」を見出すかは,質問者自身に委ねられるべき問題です. お願いですから,「『正解』は何なのですか?」「僕の考えは正しいのですか,誤りなのですか?」などの問いで回答者に執拗に迫るのは,やめてください.
その他の回答 (2)
- boiseweb
- ベストアンサー率52% (57/109)
関数を表すのに f(x) と書く習慣に対しては, 「関数 f を表すのか,それとも x に f を適用した結果の値を表すのか,はっきりしない」 という批判が昔からあります. (#1さんが言及しているラムダ記法は,そういう批判への答のひとつでもあります.) それにもかかわらず,関数を f(x) とか y=f(x) で表すと書いてある教科書が多いのは,歴史的なしがらみを引きずっている,というか,過去の習慣と現代の集合論的な記法のはざまで「煮え切らない」態度を執筆者がとっている,ということで,「教科書に書いてあるからそれが正しいのだ」とは言い切れない面があります. 私がよいと思う流儀は,関数を指し示すときには f(・) と書くことです. 括弧の中の・は「値を入れる場所」を表します. こうすれば,単に f と書くのと比べて, (1) 1変数の関数である(引数の数が1個である) (2) 関数の合成は「右から順に適用」と解釈すればよい という情報が見てとれるというメリットを享受できます. また,f(x) という記法との差異が小さいので,関数を f(x) と書く流儀の人にとっても違和感が少ないと思います. 一方,f(x) という記法がもつ「関数なのか値なのかわかりにくい」という欠点は解消されます. ところで,関数 f(・) が「どのような関数か」を説明しようと思うと,「入れる値」と「出てくる値」の関係を記述する必要があります.そして,その関係を記述するためには,たとえば 「x を入れると 2x が出てくる」 のように,「入れる値」を x などの文字で表したいですよね. そのときにだけ,x という文字を導入して,f(x) と書いてよいことにしましょう. つまり,関数を指し示すときの名称としては f または f(・) を使って x という文字は一切使わないことにして,関数を説明するときにだけ 「f(・) は f(x)=2x で定まる関数です」 のように,「入れる値」に文字 x を使うのです. ここで導入する文字 x は「関数の中身の説明」のためだけの文字(C言語の関数定義の「仮引数」と同じ)です.関数の説明の外側でたまたま同じ文字 x が出てきても,それとは別物と理解します. このようにして,関数 f(・) が何であるかをはっきりさせるプロセスが終了したら,そこから先は,f(1) も f(a) も f(x) も,どれも「単なる値にすぎない」と,すっきり理解できます. こういう流儀が多くの教科書に広まれば,質問者さんのように悩む人がいなくなると思うのですが…
お礼
回答ありがとうございました。
補足
♯1さんから、『fは確かに機能を持っているが、機能をf(x)とも書く。』というような回答を頂きました。 しかしf(x)が機能を持っている事にやはり納得できません。 f(x)=(xの式)があれば、f(x)は(xの式)によって算出される値であって、機能を言ってるのではないとしか思いません。 f(x)=2xがあれば、例えばf(1)=2ですが、抽象的にx=xならばf(x)=2xです。 だからこの場合は常にf(x)は2xという値を意味しているのだから、やはりf(x)は単なる値にすぎない(♯2さんは最後にそう書かれていらっしゃいますが)のだから、f(x)が機能を持つというのに納得出来ません。 よければ回答お願いします。
- ur2c
- ベストアンサー率63% (264/416)
> f(x)は値であり、xの関数であることを示している以外に何か意味を持ってますか? もし「f(x) には f が x の関数であるということ以外にも情報があるか」という質問なら、「あります」が答えです。 たとえば「関数 f(x)」と言えば、「ああ、関数 f と g の合成は多分、慣習どおり g(f(x)) という風に書くんだな」ということがわかります。それに対してたとえば「関数 f 」とだけ言えば、「関数の合成は g(f(x)) という風に右から左へやるのかもしれないけど、ひょっとして (x)(fg) という風に左から右へやるのかもしれない」とも思えます。 > f(x)というものは機能を持たず、それは単なる値にすぎなくて、fが機能を持っているのですよね? ほんとはそう考えて良いと思いますけど、実際には機能を f(x) とも書きます。 > また、2xなどの(xの式)と同じ機能を持っていますよね? 機能は具体的には 2 x で記述されていて、その機能に付けた名前が f です。だから f とかの名前を使いたくなければ、名無しの関数を λx. 2 x という風に作ります。こういう書き方については参考 URL の lambda calculus を見てください。これと同様の表記法は計算機言語にもよくあり、名前を付けるほどではない、使い捨ての関数定義に使います。 > 最後に、f(x)をxの関数、またはfをxの関数というのは、どちらが正しいのでしょうか? どちらでもいいのでしょうか。 λx. f(x) は「x の関数 f」と言ってますから、f を x の関数と言う方が簡潔で、f(x) を x の関数と言うのは冗長です。でも、そこまで厳密にしなくても大概、話は通じます。 > fが関数だと言う場合は写像を意識し、f(x)の場合は値を意識しているかと思います。 そのとおりだと思います。 単に f と言われた場合に私が持つイメージは、(非常に大きいかもしれない)空間を、ごっそり他の空間に投射する、映写機みたいなものです。それに対して f(x) と言われた場合に私が持つイメージは、具体的な要素 x に、何かごちゃごちゃ加工手続きを施すと、対応する具体的な値 f(x) がポンと出て来る装置です。
お礼
回答ありがとうございました。 分かりやすかったです。
補足
f(x)が機能を持っている事にやはり納得できません。 f(x)=(xの式)があれば、f(x)は(xの式)によって算出される値であって、機能を言ってるのではないとしか思いません。 f(x)=2xがあれば、例えばf(1)=2ですが、抽象的にx=xならばf(x)=2xです。 だからこの場合は常にf(x)は2xという値を意味しているのだから、やはりfが機能を持っていて機能をf(x)とも書くというのが納得できません。 よければ回答お願いします。 あと、確かに自分もfが関数という場合は集合から集合への対応をイメージし、f(x)が関数という場合はブラックボックスから出る値だとイメージしました。
お礼
すみません。そういうつもりで書いたわけではなかったのですが…。 なるほど。 fが機能を持つか、f(x)が機能を持つか、というのははっきり定義がなされていなく、人それぞれの捉え方があるんですね。 fが機能を持つとも言えるし、f(x)が持つとも言えるのだと、自分なりに捉えようと思います。 ありがとうございました。