このクイズのヒント
-
ヒント知らないよ
このクイズの参加者(4人)
広告
広告
クイズ大陸関連書籍
![]() ![]() |
![]() |
![]() |
![]()
難易度:★★★★★
![]() ![]() 有名問題ですので、類似問題が既出でしたらごめんなさい。
(一応念入りに調べたつもりですが・・・) ------------------------------------------------------------- Nを自然数 ( 1 以上の整数 ) の集合とする。 次のような関数 f :N→N を考える。 f(n) = [ π * n ] さて問題です。次の性質を満たす関数 g :N→N を求めよ。 F = { f(n) | n∈N }, G = { g(n) | n∈N } として、 ・F ∪ G = N ・F ∩ G = Φ(空集合) [] はガウス記号とする。( [x] = xを超えない最大整数), 例:[2.34]=2 「*」 は、掛け算のことです。 π は、円周率のことです。3.14.... // 質問があれば、どんどんコメントしてください。 ![]() 例:結局何を求めればいいのか、もう少しわかりやすく・・・等など。
|
![]() ![]() 質問です
![]() g(x)にはどのような演算記号が使えると考えればいいでしょうか? ![]() f(x)の定義にガウス記号があるので、さすがにガウス記号は使っていいですか? ![]()
ゲーデル
>ガウス記号は使っていいですか?
もちろんです ![]() 一般的な高校生が理解できないような、抽象的な関数や演算子を使う場合は、 簡単な説明をつけてもらえると、うれしいです。 基本的に、条件さえ満たせば、なんでもOKだったりします。 ![]() 再帰的な定義をしてもいいですよ。g(1)=1,g(n)=g(n-1)+...とか。 ただし、有限のステップで値を決定できるようにしてください。 後は常識の範囲で ![]() 例えば、こんなのはNGです。ナス評価あげますけど ![]() g(n)= N-F から、g(m)(m<n)ではない1つの自然数を選ぶ関数 g(n)={n=1 -> 1, n=2 -> 2, ...,無限に長い定義 ただ、実は結構簡単な式で表せたりします。 ![]() 問題は相当難しいですが、中学生でも解ける人は解けます。(稀でしょうが ![]() ちなみに、答えだけだと「正解」どまりですが、 証明付きだと高評価になります。 ![]() g(n) = [n π /(π - 1)]
実際,以下のように題意を満たしている. n 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15 f(n) 3, 6, 9,12,15,18,21,25,28,31,34,37,40,43,47 g(n) 1, 2, 4, 5, 7, 8,10,11,13,14,16,17,19,20,22 (証明) 一般に c > 1 を無理数として,正整数 n 以下の [c i] (i ∈ N) の個数を M(c, n) とする.ただし,N = {1,2,3,...} である. すると, M(c, n) = #{i ∈ N | [c i] ≦ n} = #{i ∈ N | c i < n+1} = #{i ∈ N | i < (n+1)/c} = [(n+1)/c] である. いま,1/π + 1/c = 1 すなわち c = π/(π-1) ならば, 任意の n ∈ N について,(n+1)/π + (n+1)/c = n+1 より, 《x》で x の小数部を表すと, 《(n+1)/π》+《(n+1)/c》= 1 である.したがって, ((n+1)/π + (n+1)/c) - (《(n+1)/π》+《(n+1)/c》) = [(n+1)/π] + [(n+1)/c] = (n+1) - 1 = n つまり M(π, n) + M(c, n) = n である. ここで,任意の n について M(π, n) + M(c, n) = n ならば, {[π i] | i ∈ N} ∪ {[c i] | i ∈ N} = N, {[π i] | i ∈ N} ∩ {[c i] | i ∈ N} = Φ, でなければならず,逆も成り立つ. ![]() ![]() 実は「切り捨て御免! その3」として出題しようと思っていたテーマです.
![]() π でなくても,1 より大きい無理数なら同様に扱えます. 証明はこんな感じだったと思います. ![]()
ゲーデル
正解です
![]() ![]() 正解発表は nn)/ さんの解答を公表する形にしますね ![]() と思ったけど、無責任かもしれない ![]() 用意していた解答の方「も」、公表します。 ![]() ストーリーが全く一緒ですが ![]() ヒミツ
![]() ![]() 変形すると、もっと簡単な式になりました。
えーーーーーーーー面白い!!こんな形になるの?予想外でとてもびっくりしました。 でも証明ができない。 ![]()
ゲーデル
正解です
![]() ![]() ![]()
ゲーデル
正解です
![]() ![]() f(n)=[π×n]
g(n)=[π×n/(π−1)] とします。 π/(π−1)=1+1/(π−1)>1ですので、g(n)≧1です。 このf、gが問題文の条件を満たすことを示します。 mが自然数のとき、f(n)=mであれば、m≦nπ<m+1です。 πで割ると、m/π≦n<(m+1)/π よって、f(n)≦mのとき、n<(m+1)/πであり、 (m+1)/πは自然数ではないので、n≦[(m+1)/π]となります。 f(n)は単調増加ですので、 f(n)≦mを満たす自然数nは1から[(m+1)/π]までの[(m+1)/π]個です。 #n(x)を条件xを満たす自然数nの個数を表すものと定義すると、 #n(f(n)≦m)=[(m+1)/π]と書けます。 gについても同様にして、#n(g(n)≦m)=[(m+1)(π−1)/π]です。 (m+1)/π+(m+1)(π−1)/π=m+1ですので、 [(m+1)/π]+[(m+1)(π−1)/π]≦m+1です。 πは無理数なので等号が成立することはありません。 また、切捨てにより減る値は1未満ですから、 [(m+1)/π]+[(m+1)(π−1)/π]>m+1−2=m−1であり、 [(m+1)/π]+[(m+1)(π−1)/π]=mと分かります。 つまり、任意の自然数mについて、#n(f(n)≦m)+#n(g(n)≦m)=mです。 m=1のとき、#n(f(n)≦1)+#n(g(n)≦1)=1です。 f(n)≧1、g(n)≧1ですから、#n(f(n)=1)+#n(g(n)=1)=1です。 m≧2のとき、 #n(f(n)≦m−1)+#n(g(n)≦m−1)=m−1、 #n(f(n)≦m)+#n(g(n)≦m)=mですので、 #n(f(n)=m)+#n(g(n)=m)=1と分かります。 以上より、任意の自然数mについて、#n(f(n)=m)+#n(g(n)=m)=1です。 つまり、任意の自然数mについて、f(n)=mまたはg(n)=mを満たすnがただ一つ存在し、 しかも、f(n)≠g(n)となっています。 従って、F ∪ G = N、F ∩ G = Φであり、条件を満たします。 以上証明終わり。 ![]() ![]() 証明できました。
うまくできてますね〜。実に神秘的です ![]() ![]()
ゲーデル
おめでとうございます
![]() ![]() f(n)=[nπ]
Fに属する自然数の間を補完するイメージで。 [nπ]≦nπ<[nπ]+1 両辺にπ加えて [nπ]+π≦nπ+π<[nπ]+1+π 各辺のガウス記号をとっても、大小は等号を含むだけで順序は入れ替わらず、 [[nπ]+π]≦[nπ+π]≦[[nπ]+1+π] [nπ]は自然数なので、外に出せて [nπ]+[π]≦[nπ+π]≦[nπ]+[1+π] π=3.14...だから [nπ]+3≦[nπ+π]≦[nπ]+4 [nπ+π]=[nπ]+3 or [nπ]+4 (1)[nπ+π]=[nπ]+3のとき。 nπ+π<[nπ]+4だから nπ-[nπ]<4-πのとき。 このようなnのときは、[nπ]+1と[nπ]+2を作れればいいと考える。 (2)[nπ+π]=[nπ]+4のとき。 [nπ]+4<nπ+πだからnπ-[nπ]>4-πのとき。 このようなnのときは[nπ]+1、[nπ]+2、[nπ]+3を作ると考える。 4-π=0.858407346...=dとする。 (1)0<nπ-[nπ]<d (2)d<nπ-[nπ]<1 のそれぞれで場合分けする。 最大で三通りの値を返せる関数を作れればいいので、nを3で割った余りを利用する。 まずnを3で割った余りを返せるような関数r(n)を作ることを考える。 これは r(n)=n-3*[n/3] と書ける。 (1)0<mπ-[mπ]<dのとき、[mπ]+1と[mπ]+2をつくる n=3m-2,3m-1,3mのとき nからmを作るにはm=[(n+2)/3] mod3で1,2,0に対して1,1,5,2を返す関数を考えるには r(n)/2+1 これのガウス記号をとると [r(n)/2]+1は n≡0で1 n≡1で1 n≡2で2となる。 (2)d<mπ-[mπ]<1のとき、[mπ]+1と[mπ]+2と[mπ]+3をつくる [(mπ-[mπ])/d]=1 [r(n)]+1は mod3で n≡0で0 n≡1で1 n≡2で2 以上から、基本は g(n) =[[(n+2)/3]π]+[r(n)/2]+1 か =[[(n+2)/3]π]+[r(n)]+1 で (mπ-[mπ])をd=4-πで分けられるように作ればいい。 上のg(n)は[nπ]に+1や+2をしているので、最小は[π]+1である。 実際には1からスタートしたいので[(n-1)π]になるように、mの部分をm-1になるようにして g(n) =[[(n-1)/3]π]+[r(n)/2]+1 か =[[(n-1)/3]π]+[r(n)]+1 とすればいい。 これを(mπ-[mπ])をd=4-πで場合分けができるようにする。 (ただしm=[(n-1)/3]) 例えば [(mπ-[mπ])-d+1] は (1)0<mπ-[mπ]<dのとき 2-d<mπ-[mπ]-d+2<2 2-d>1だから [mπ-[mπ]-d+2]=1 (2)d<mπ-[mπ]<1のとき 2<mπ-[mπ]-d+2<3-d<3 だから [mπ-[mπ]-d+1]=2 [r(n)/2]や[r(n)]の部分を [r(n)/2*[mπ-[mπ]-d+2]] と置き換えればいい。 纏めると g(n) =[mπ]+[r(n)/2*[mπ-[mπ]-2+π]]]+1 m=[(n-1)/3] r(n)=n-3*[n/3] 全部突っ込んだ式を書くと g(n)=[[(n-1)/3]π]+[(n-3*[n/3])/2*[[(n-1)/3]π-[[(n-1)/3]π]-2+π]]]+1 ![]() ![]() 無理矢理つくるとこういうのも作れますね
![]() ![]()
ゲーデル
素晴らしいです
![]() ![]() g(n)=[nπ/(π-1)](n∈N)
(以下は証明) αを1より大きな無理数とする。 1/α+1/β=1 を満たすα、βに対し、 A={n=[kα]|k∈N} B={n=[lβ]|l∈N} の二つの集合はA∪B=N、A∩B=φとなる。 これを証明する。 1/α+1/β=1 から α=β/(β-1) β=α/(α-1)=1+1/(α-1) であり、βが有理数だとαも無理数になって矛盾する。 したがってβも無理数である。 またα>1よりβ>1である。 [1] 集合{n=[kα]|k=1,2,...,m} に対し、二つの異なる自然数k1,k2に対して k1<k2⇔[k1*α]<[k2*α] (証明)(⇒の方) [k2*α]<k2*α<[k2*α]+1 であるから、 k2*α-1<[k2*α]<k2*α また、k1とk2は相異なる自然数でk1<k2ゆえ、k2≧k1+1が成り立つ。 したがって [k2*α]>k2*α-1≧(k1+1)*α-1=k1*α+α-1 α>1であるから、結局 [k2*α]>k1*α したがって [k1*α]<k1*α<[k2*α] したがって[k1*α]<[k2*α]([k1*α],[k2*α]はともに自然数ゆえ) また逆も成り立つ。 [k1*α]<[k2*α]で、[k1*α],[k2*α]はともに自然数だから [k1*α]<k1*α<[k2*α] また[k2*α]<k2*α(等号不成立)だから k1*α<k2*α α>0ゆえk1<k2 [1]より 集合 {n=[kα]|k=1,2,...,m} の要素は相異なるm個の自然数の要素からなり、要素の大小の順序はkの大小の順序と一致している。 [2]A∩B=φの証明。 (背理法を用いる) A∩B≠φとする。 ある自然数nがあって、n∈A∩Bである。 n∈Aかつn∈Bゆえ、[kα]=[lβ]=nを満たすある自然数k,lが存在する。 [lβ]<lβ<[lβ]+1 である。 左側の不等号は、βが無理数ゆえ等号が成立しない。 [lβ]=[kα]を代入すると [kα]<lβ<[kα]+1 β=α/(α-1)を代入して [kα]<lα/(α-1)<[kα]+1 各辺にα-1>0をかけて (α-1)[kα]<lα<([kα]+1)(α-1) [kα]α-[kα]<lα<[kα]α+α-[kα]-1 -[kα]<lα-[kα]α<α-[kα]-1 各辺(-1)かけて [kα]+1-α<([kα]-l)α<[kα] [kα]<kα<[kα]+1より[kα]+1-α>kα-α=(k-1)α よって上の不等式から (k-1)α<([kα]-l)α<kα と書き換えられ、各辺α>0で割ると k-1<[kα]-l<k である。 k-1、k、[kα]-lはすべて整数であり、上の式はk-1とkの間に整数が存在することを意味しているが、これは矛盾。 したがってA∩B=φである。 [3]A∪B=Nが成り立つことを示す。 任意の自然数nに対して、 A(n):nより小さい、Aの要素を集めた集合 B(n):nより小さい、Bの要素を集めた集合 とし、A(n)∪B(n)={1,2,...,n-1}(⊂ではなく=)であることを示す。 (ただし、n=1はA(n)∪B(n)=φ) A(n)のなかで最大の要素[kα]を考える。 [kα]+1≦n≦[(k+1)α] が成り立っている。 kα<[kα]+1、[(k+1)α]<(k+1)αだから(αが無理数ゆえ等号不成立)、 kα<n<(k+1)α 各辺α>0で割って k<n/α<k+1 よって[n/α]=kで、A(n)の最大要素は[kα]=[[n/α]α]と書ける。 また[1]より任意の自然数k≦[n/α]に対して、[kα]はnより小さい。 よって A(n)={m=[kα]|k=1,2,...,[n/α]} と表せ、A(n)の要素の数は[n/α]である。 同様に B(n)={m=[lβ|l=1,2,...,[n/β]]} で、要素の数は[n/β]である。 A(n)とB(n)の共通部分は、[2]よりA∩Bだからその部分集合であるA(n)とB(n)についてもA(n)∩B(n)=φである。 したがってA(n)∪B(n)の要素の数はA(n)とB(n)の要素の数の和で表せて、[n/α]+[n/β]に等しい。 [n/α]<n/α<[n/α]+1 [n/β]<n/β<[n/β]+1 であるから(α、β無理数ゆえ等号不成立)、 n/α-1<[n/α]<n/α n/β-1<[n/β]<n/β 辺々足して n(1/α+1/β)-2<[n/α]+[n/β]<n(1/α+1/β) 1/α+1/β=1だから n-2<[n/α]+[n/β]<n [n/α]+[n/β]は整数だから[n/α]+[n/β]=n-1である。 つまりA(n)∪B(n)に含まれる要素はすべてnより小さい自然数であり、要素の数はn-1個である。 これはnより小さい自然数の個数と一致する。 ゆえに A(n)∪B(n)={1,2,...,n-1} である。 これが任意のnについて成り立つので、A∪B=Nである。 結局今回の問題はα=πであり、F=Aと見なせばよい。 したがって求めるg(n)は1/π+1/β=1を満たすβを用いて g(n)=[βn](n∈N) と表される。 βを求めると β=π/(π-1)であり g(n)=[nπ/(π-1)](n∈N) である。 ![]() ![]() 要求されているのはたぶんこっちですね
![]() ![]()
ゲーデル
丁寧な証明ありがとうございます
![]() ![]() 狭義単調増加とかの条件をつければ、この解答で一意に決まりますけど、 面白い解答も募集したかったので、あえて付けていませんでした。 ![]() ![]() ![]() えっと、↑の証明は、力作が多いので、感服・目からウロコメダルがある囁きは
全て正解発表時に公開したいのですが、「そんなの止めて!」っていう人は、 こっそり(別の問題でもいいので)囁いてください。 ![]() ![]() No.8 レス << 題意から,任意の正解 g(n) に対して,任意の1対1関数 (全単射)
h: N→N を用いた合成関数 g(h(n)) もまた正解であることが自明です. たとえば,h(n) = 3 n - 4 [n/2] - 1 とすれば, h(n): 2, 1, 4, 3, 6, 5, ... (n = 1, 2, 3, 4, 5, 6, ...) ですし,h(n) = i - 2 mod(i-1, 3) + 2 とすれば, h(n): 3, 2, 1, 6, 5, 4, ... (n = 1, 2, 3, 4, 5, 6, ...) です. つまり,標準形として,単調増加の解が示されれば,それで十分と思います. ボムボム さんの解答 (No.8) が全く違う形に書けているならば,興味津々です. ![]()
ゲーデル
>h: N→N を用いた合成関数 g(h(n)) もまた正解であることが自明です.
そうですね ![]() 題意から、 N-F に対する全射ならばなんでもOKです。 ボムボムさんの>>7の解答は単射でなく、全射であるものの一つでした。 後で公開予定ですが、なかなかの力技で見つけだしているもので、すごいです。 ![]() 追記: h:N→N(全射)として、g(h(n))もまた正解ですが、 答えが綺麗かどうかは置いておいて、 そういう発見の仕方ではないので、素晴らしいってことです ![]() それと、ボムボムさんの>>8は、普通の狭義単調増加の答えです。 ![]() g(n) = [π [(n + 3)/4]] + h(2 mod(i - 1, 4) - 3)
ただし,h(x) = x (25 - x^2) / 24. 要は,G = F-2 ∪ F-1 ∪ F+1 ∪ F+2 を実現すればよいので,上は一例に過ぎません. ![]() ![]() そうですね.
元の有名問題にとらわれて,単射でなくてもいいという視点が抜けてました. それならば,いろいろなことが考えられます. ![]()
ゲーデル
それも単射でなく全射である解答の一例ですよね
![]() ガウス記号を使うと、ガウス記号の中の関数が同じでなくても ガウス記号つけると同じ事もあり得る(*1)ので、他にも色々面白いことができます。 また、高校の範囲を超えれば、ガウス記号を使わずとも表せます。(*2)。 (*1)例:[√n + √(n+1)] = [ √( 4 * n + 2 ) ] (中だけ見ると等号不成立) (*2)例:フーリエ級数展開すればよい。 ![]() ![]() [解答]
g(n) = [ n * π / (π-1) ] [証明] 1 より大きい無理数を s とする。また、t=s/(s-1) とする。 f(n)=[s*n]とした時、 g(n)=[t*n] が条件を満たすことを示す。 任意の自然数 m について、 s*n, t*n がいかなる n についても整数にならないことに気をつければ、 [s*n]<m を満たす n は [m/s] 個 [t*n]<m を満たす n は [m/t] 個 ここで、m/s + m/t = m だから、 m/s, m/t が整数にならないことに気をつければ、 [m/s]+[m/t] = m-1 が成り立つ。 これは、f(n)=0 や g(n)=0 を満たす n∈N が存在しないこと (m=1) と、 m が 1 増えるにつれて、f(n)<m か g(n)<m を満たす n∈N が 1 つだけ増えることを意味し、帰納的に条件が成り立つことが示される。 [元ネタ] Rayleigh の定理と呼ばれるものです。 |