エレファント・ビジュアライザー調査記録

ビジュアルプログラミングで数式の変形を表すことを考えていくブロクです。

人工知能的サーバー対ブラウザー(1)

ChatGPT で以下のように入力してみました。
「以下のようなプログラムを書いてください:

  • ユーザーはブラウザーを通してサーバーと通信しています。
  • ユーザーはサーバーから、ある自然数と、その数の平方根をある桁数まで計算したものを受け取ることができます。
  • ユーザーはその情報から、その自然数平方根の次の桁を計算してサーバーに送ります。
  • サーバーはその一桁の数を受け取ります。
  • サーバーは、自分で次の桁を計算することはできませんが、その一桁の数が次の桁として正しいかどうかを確かめることはできるとします。
  • サーバーは、その一桁の数が次の桁として正しいかどうかを調べて、結果をユーザーに送ります。
  • サーバーは、その一桁の数が次の桁として正しいならば、次の桁を追加したものを記憶して、次からはその新しい数をユーザーに送ります。」

こうするとそれらしいプログラムを得ることができました。

関数プログラミングと無限論理多項式」ではこのようなプログラムをイテレーターで模倣したものについて調べています。サーバー側がイテレーター、ブラウザー側がイテレーターにアクセスする側と考えてください。

これにはユーザーが計算するバージョンとサーバーで計算するバージョンがあります。これは何かというと、ユーザーがブラウザーで書いたものをサーバーに取り込むことは可能なので、ユーザーが計算するバージョンからサーバーで計算するバージョンに移行する方法について調べるサンプルとなっています。これが可能ならば、ユーザーが操作するだけでサーバーを更新することができ、ブラウザー側のプログラミング言語は不要と考えられます。

また、いろいろなプログラミング言語を使うことによって、ブラウザー側のプログラミング言語の意義についても調べています。

関数プログラミングと無限論理多項式(6) - エレファント・ビジュアライザー調査記録」、「関数プログラミングと無限論理多項式(7) - エレファント・ビジュアライザー調査記録」、「関数プログラミングと無限論理多項式(19) - エレファント・ビジュアライザー調査記録」、「関数プログラミングと無限論理多項式(28) - エレファント・ビジュアライザー調査記録」、では Python の例を扱っています。Visual Studio から Python を使って書いています。

ChatGPTで「Python で長い桁数の固定小数点の数値を使うにはどうすれば良いですか」と入力してみたら decimal モジュールを使えば良いということがわかったので、これを使って書き直してみたいと思います。