演算子\ {+、-、\ times、/ \}を使用する場合{+,−,×,/}(つまり、パワー演算子を含めない場合)、すべての問題はおそらく決定可能です。
ゼロでの等価性のテスト
たとえば、について考えてみましょう。次に、を正式な記号として扱い、各葉が多項式になるようにします(たとえば、整数は定数多項式です。は多項式の次数1)。今、あなたは以上の合理的多項式としてツリーを表現することができで、正式不明など。L=Z∪{π}πZ[π]55ππ+0Zπ
この多項式がます。がゼロ多項式(次数)かどうかをテストします。ゼロ多項式でない場合、式はゼロに等しくありません。場合多項式ゼロであり、そして多項式でゼロではない場合、式はゼロに等しいです。この手順の正確さは、が超越的であるという事実から来ています。p(π)/q(π)p(π)−∞p(π)q(π)π
この手順の複雑さは何ですか?答えは計算モデルに依存します。各演算子が(オペランドのサイズに関係なく)評価に一定の時間を費やしていると仮定します。次に、複雑さは結果の多項式のサイズに依存します。多項式の次数はツリーの深さとともに指数関数的に増加する可能性があるため、多項式を再帰的に作成してそれを明示的に(係数形式で)表現すると、実行時間はツリーの深さで最大で指数関数になります。幸い、次数はツリー内の葉の数で最大で線形に増加するため、決定論的アルゴリズムの実行時間はツリーのサイズで線形になります。
したがって、ツリーの単純な表現と単純化した計算モデルを想定すると、演算子が場合、これはゼロテストのための線形時間アルゴリズムを提供します。{+,−,×,/}
この手順は、だけでなく、および。L=Z∪{π}N∪{π}Q∪{π}
についても、妥当な予想を立てることができれば、同じ手順が機能します。とは代数的に独立しているということです。この推測が正しいかどうかは不明ですが、そうであるようです。とにかく、これがアプローチです。多項式は、1つの未知数ではなく2つの未知数にわたる多変量多項式として扱われますが、と代数的独立性が与えられると、すべてが以前と同様に引き継がれます。またために働く及び推測を仮定し、あまりにも、再び。L=Q∪{π,e}πeπ,eπeL=Z∪{π,e}L=N∪{π,e}
派手になりたい場合は、多項式の同一性テストにランダム化アルゴリズムを使用できます。もし、それらは以下に達するだろう:ランダムプライム選択し及びランダム整数 ; 各インスタンスを置き換えます。次に、結果の式が評価されるかどうかを確認します。(と両方がある場合は、2つのランダムな整数とます。)このテストを複数回繰り返すことができます。この手順でゼロ以外の値(モジュロL=Z∪{π}rsπ∈{0,…,r−1}πsπ0modrπesπser)、元の式は確かにゼロ以外です。常にゼロ(法とする)を与える場合、高い確率で元の式はゼロに等しくなります。これは、一部の計算モデルではより効率的です(たとえば、単一の演算子を評価する時間がオペランドのサイズに依存する場合)。r
符号比較
同様の手順を使用して式の符号を見つけることもできます(ここでも、^演算子を除外していることを前提とし、とが代数的に独立していると想定しています)。式を有理多項式として評価します。およびと判断したとします。かどうかを知りたい。πep(π,e)/q(π,e)Q[π,e]p(π,e)/q(π,e)≠0q(π,e)≠0p(π,e)/q(π,e)>0
これが1つのアプローチです。なお、 IFF。したがって、新しい多項式を作成し、これを符号を評価する問題に還元できます。。基本的に、と有理多項式の符号を評価する必要があります。これがゼロ以外の何かに評価されることを知っています。p(π,e)/q(π,e)>0p(π,e)⋅q(π,e)>0r(π,e)=p(π,e)⋅q(π,e)r(π,e)πe
一つのアプローチは、計算することである及びに精度のビットを、次に評価する上下限と上限を獲得し、それに応じて。この間隔に0が含まれる場合は、下限が厳密に正になるか、下限が厳密に負になるまで、 2倍にします。πekr(π,e)r(π,e)k
このアプローチの複雑さは何ですか?もし評価は値になり、実行時間は入力のサイズとで多項式になると思います。|r(π,e)|ϵlg1/ϵ
より良いアルゴリズムがあるかもしれませんが、これは私が今思いつくことができる最高のものです。
結論
要点は、パワー演算子(^)が難易度の本当の原因であることです。パワーオペレーターがなければ、すべての問題はあまり問題なく解決できます(妥当な推測を前提としています)。