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

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

中間報告(16)

ここの主な目的はサーバーのプログラムをブラウザーから更新できるようにするための理論を考えることです。ブログなどではブラウザーから更新することができるのですが、サーバーのプログラムを更新するというものではないため、多くの人がブログなどを書いてもシステムの改善にはつながらないという問題点があります。

ユーザーのブラウザーでの入力からサーバーのプログラムを作成することができれば良いのではないかと思うのですが、ブラウザー側でプログラムを作ったとしてもそれがサーバー側に反映されることはないように思います。それをサーバー側に反映させるためのプログラミング言語や理論が必要なのではないかということでいろいろ調べています。

論理プログラミングによる永続的プログラミング

永続性という用語は、ある時点の状態を記録して復元することを表すようですが、ここでは、サーバー上で永久に動くプログラムの状態を表すことを考えます。

論理プログラミングのデータを半環と考えて、多項式の極限を求めるように極限を作ることによって永続的プログラミングのデータを表すことを考えます。これは今のところうまく表すことができていませんが、これをビジュアルプログラミングを使って表すことを考えていきます。

クロージャーによる永続的プログラミング

クロージャーはどのように定義すれば良いのかよくわからないので調べています。クロージャーを使えば永続的プログラミングを表すことができると考えていて、論理プログラミングの場合と同様に、これをビジュアルプログラミングを使って表すことを考えています。

代数的構造での単一化

ある代数的構造の公理を組み合わせて、「最も一般的な定理」を作っていきます。これはもともと数式の変形で記述する事は可能ですが、数式で書くと複雑になるので、ビジュアルプログラミングを使って記述することを考えています。

多項式の計算と帰納法での単一化

帰納法での単一化は、代数的構造での単一化と同様です。帰納法の公理を組み合わせて、「最も一般的な定理」を作っていきます。

ガロア理論の説明に現れる計算の中に多項式の計算と帰納法で記述できそうなものがあります。これを数式の変形で記述しようとしていましたが、まだできていません。数式の変形で書こうとすると複雑になるので、ビジュアルプログラミングを使って記述することを考えていきます。

順序に依存しない記述

連立1次方程式の解は方程式の順序には依存しないのですが、方程式の順序に依存しないように解法を記述することが通常の数学の記法ではできないので、これを記述するための記法を考えていましたができていませんでした。これを数式の変形で記述しようとすると複雑になるので、ビジュアルプログラミングを使うことができないかと考えています。

素因数分解の一意性を説明する場合にも、ビジュアルプログラミングを使うことができないかと考えています。

可換モノイドのようなものを一般化したモノイド圏というものがあるので、これをビジュアルプログラミングで記述することができればいろいろ使えるのではないかと考えています。