KB – プロログ知識ベース

2026/06/27 21:16

KB – プロログ知識ベース

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

本テキストは、Trealla Prolog を用いたローカルフIRST なハイパー関係型知識ベースを特徴とする実験的な修士論文プロジェクトを紹介しています。その核心には、双方向再帰共通テーブル式(CTE)で強化された SQLite .storage が置かれ、これによりシステムは SHA-256 ハッシュ付原子コミットを通じた完全なタイムトラベル履歴を維持しつつ、関連するデータサブグラフのみをロードすることが可能になります。重要な革新点として、Prolog ロジックと C ベースのインターフェースを FFI バインディングを通じて結合したアーキテクチャがあり、バックエンド効率を損なわずにインタラクティブなグラフィカルユーザーインターフェースを実現しています。これは研究プロトタイプとして設計されており、商業製品ではなく、Clang や Xcode などの特定のコンパイラが必要であり、GPL-3.0 ライセンスに従います。現時点では、この環境内でコンテキストをロードし、ステートメントを宣言し、検索を行い、CAS にファイルをインGEST して履歴を表示し、一貫性を検証し、GUI を起動することが可能で、知識グラフやグラフ研究の探索に適しています。高度な機能はローカルフIRST アプリケーションへの潜在的価値を提供しますが、プロジェクトはまだ開発段階にあり、業界での採用には現在の学術的な範囲を超えた将来的な成熟を待つ必要があります。

本文

ローカルファーストな超関係性知識ベース(CAS 採用)

本プロジェクトは、修士号の卒業研究用として構築された、ローカルファーストかつ超関係性を扱う知識ベースのプロトタイプです。コンテンツアドレスブルストロージ(CAS)を採用しており、高信頼度なグラフ探索を可能にしています。

概要と特徴

システムは以下の技術的支柱で構成されています。

  • 超関係性グラフ
    • 知識は「主語、述語、目的語、属性」からなるステートメントとして格納されます。
    • 主語や目的語自体がステートメントとなり得るため(再体化)、主張に対する主張が可能です。
  • コンテンツアドレスブルストロージ (CAS)
    • ファイルはステージングされ、SHA-256 ハッシュ化されます。
    • グラフメタデータと共に原子操作でコミットされ、重複削除が自動的に処理されます。
  • タイムトラベル
    • 更新操作により新しいステートメントバージョンが作成され、
      replaces_id
      でリンクされます。
    • pl history
      コマンドを用いると、バージョンチェーンを遡って閲覧できます。
  • プロロッグ・ファースト
    • Trealla Prolog がメインランタイムとして使用されます。
    • SQLite や Raylib は FFI(Foreign Function Interface)を通じて C の共有ライブラリ経由でアクセスされます。
  • 対話型 GUI
    • レイリブ(Raylib)ベースのグラフビューアーを備えています。
    • 画像プレビュー、クエリバー、ノード検索機能を搭載しています。

ビルド方法

依存関係と環境

  • コンパイラ: Clang (Linux) または Xcode CLT (macOS)。
  • Trealla Prolog、Raylib、raygui、SQLite は子モジュールとして含まれています。

ビルド手順

以下のコマンドを実行してコンパイルします。

git clone --recurse-submodules <repo-url>
cd kb
make

これでプロジェクトルートに

libcas.so
libgui.so
libsqlite3.so
が生成されます。Raylib は
make
実行時にソースコードから直接コンパイルされます。

Trealla の独自ビルド(任意)

Trealla をソースからビルドする場合は以下の手順を踏む必要があります。

cd vendor/trealla && make

環境変数

$PATH
tpl
が追加されていることを確認してください。

使い方 (CLI)

コンテキストをメモリに読み込み、REPL を起動して操作を開始します。

# コンテキスト読み込み & REPL 起動
tpl -l main.pl -- pl load concept(mathematics)

# 新しいステートメントを断言する (Axiom)
tpl -l main.pl -- pl assert \
  "statement(concept(mathematics), foundation_of, concept(logic), [])"

# フルテキスト検索
tpl -l main.pl -- pl search mathematics

# テーム(概念)のバージョン履歴表示
tpl -l main.pl -- pl history concept(mathematics)

# CAS にファイルをインGEST (読み込み) する
tpl -l main.pl -- cas add document.pdf

# CAS のオブジェクト一覧表示
tpl -l main.pl -- cas list

# GUI を起動する
tpl -l main.pl -- gui

# データベースの整合性検証
tpl -l main.pl -- pl verify

# ガーベッジコレクション実行
tpl -l main.pl -- pl gc

アーキテクチャ

コアコンポーネント (
main.pl
)

  • CLI ルーターおよび REPL として機能します。

Prolog パッケージ (
prolog/
)

  • sync.pl
    : プロロッグ項と SQLite 間のマージを行う 2 フェーズコミット処理。
  • cas.pl
    :
    libcas.so
    への FFI バインディング。
  • db.pl
    : SQLite クエリ処理。
  • gui.pl
    : レイリブフロントエンド(イールドループパターン採用)。
  • ontology.pl
    : インメモリアーキテクチャ上の知識グラフ。

C ソース (
src/
)

  • cas.c / cas.h
    : CAS 実装(ステージング、SHA-256 ハッシュ化、原子コミット、検証機能)。
  • gui.c / gui.h
    : レイリブレンダラーおよび入力ハンドラ。
  • graph.c / graph.h
    : グラフレイアウト計算。
  • util.c / util.h
    : SHA-256、MD5 などのユーティリティ関数。

データ定義 (
sql/
)

  • schema.sql
    : SQLite スキーマ(WAL モード、FTS5、再体化に対応)。

ライブラリ (
vendor/
)

  • Trealla, Raylib, raygui, SQLite(子モジュールとして含まれる)。

データモデル

すべての知識はステートメント/4 テームとして表現されます。

形式:

statement(Subject, Predicate, Object, Properties)

  • ネスト構造: 主語と目的語はプロロッグ項または、ステートメント表内の他の行を参照する整数 ID となり得ます。これにより、任意のネスト構造が可能になります。
  • SQLite 対応: ANY 型カラムおよびバージョン管理用の
    replaces_id
    フォークレインキーにより実装されています。

使用例

% アリスが(確度 0.9 の信頼度を持って)ボブがピザを好きなことを主張している
statement(
  person(alice),
  claims,
  statement(person(bob), likes, food(pizza), []),
  [certainty(0.9)]
)

コンテキスト読み込み

コンテキストの読み込みには、シード項から到達可能な部分グラフのみをプロロッグのインメモリーワーキングセットに取得するための相互再帰的な CTE(共通テーブル表現)が使用されます。

Nix

再現性の高いビルドのために

kb.nix
シェルが用意されています。

ライセンス

GPL-3.0 — 詳細は

LICENSE.md
をご覧ください。

同じ日のほかのニュース

一覧に戻る →

2026/06/30 4:49

/.self: ホスト環境を構築することを支援する新しいトップレベルドメイン

## 日本語訳: 本件の核心となるメッセージは、ユーザーのデータや注意を搾取する既存のモデルを捨て、倫理的な新アーキテクチャへとインターネットを変革する呼びかけです。Human-Centered Computing Foundation は、ICANN の Applicant Support Program を通じてこのイニシアチブを正式に開始し、その主な目標として、倫理的技術にのみ専属 reserved されるトップレベルドメイン(TLD)の確保を目指しています。この動きは、人間の行動から価値を抽出するという業界の確立されたダイナミクスに直接挑戦し、代わりに人間中心の価値に基づいたシステムを提案しています。 もしこの新しいドメイン拡張を取得することに成功すれば、同財団はユーザーエシクティクスをデータマイニングよりも優先するプロジェクトのみがホストされる特定のデジタル空間を作成します。この転換は大きな利益をもたらすと約束しており、個人は企業の監視ではなく自らの道徳的原則を中心に設計された Web 環境を航行することができます。企業にとっては、持続的な成功には単に注意を採取するのではなく、真の人間のニーズを満たすアーキテクチャが不可欠になる、避けられない未来を示しています。最終的に、このキャンペーンは、技術が人々を利用するために操作するのではなく、人々をサービスするためのセクターとして、誠実さを定義されたインターネットの別個の分野を確立することを目指しています。

2026/06/30 2:05

Qwen 3.6 27B はローカル開発のsweet spot(最適解)です。

## Japanese Translation: 本文は、ローカルコード生成のために Qwen 3.6 27B デンスモデルを優先すること advises(推奨)しています。これは、指示追従の精度と効率的なパフォーマンスのバランスが取れており、Node パッケージの作成といった特定のタスクで失敗する可能性があるように 35B の A3B mixture-of-experts などのより大きなバリエーションを上回る場合があるためです。ベンチマークによると、このモデルは消費者向けハードウェア上で効率的に動作しながら、2025 年の中盤の GPT-5 程度の知能レベルに達します。Apple M5 チップ(共有 RAM を最大 48 GB 使用)では約 30 トokens/秒、量子化された状態で高級な Nvidia RTX 5090 カードでは 50 トokens/秒 にスケールします。重要なのは、著者が倫理的かつ技術的な理由から、Ollama ではなく `llama-server` または `llama-cli` を使用して Hugging Face の量子化版(例:`unsloth/Qwen3.6-27B-MTP-GGUF:Q8_0`)でモデルを実行することを推奨している点です。この構成により、開発者は OpenCode エージェントなどのツールと互換性のあるセキュアな「vibe coding」環境を構築できます。ローカルでモデルを実行することは、データのプライバシーを維持し、機密情報が外部の米中クラウドプロバイダーに漏洩することなく、オフラインでの作業をサポートするために不可欠です。将来的にはツールの呼び出しを通じて事実知識と生粋の知能を分ける傾向があるかもしれませんが、この即席のソリューションは品質を損なうことなく、個人および小規模チームの開発者にとってアクセス可能な入門点を提供します。より大きなモデルが将来的にはエンタープライズレベルのハードウェアを必要とするでしょうが、27B バリエーションは現在、標準的な消費者向けハードウェア上で DeepSeek-V4 Flash などのフロンティア代替案と比較できる堅牢でプライベートな AI 機能を 제공합니다(提供しています)

2026/06/28 0:05

アイコンを解放せよ

## Japanese Translation: 2026 年 6 月 26 日付の投稿で、Paul Kafasis は、macOS 26「Tahoe」がすべてのアプリアイコンに対して義務付けられた統一された「squircle」形状を導入し、ファーストパーティアイコンをボヤけた「Liquid Glass」 appearances に変更したと報告している。多くの人にとってこれはデザインと使いやすさにおける重大な後退だと見られている。サードパーティ製アイコンをこの指定された squircle 形状に強制することで、ユーザーが迅速な識別のために頼りにしていた多様な形状はなくなり、色が主な識別基準になった——特に色覚障害を持つユーザーや類似の色を持つアプリを区別する際には深刻な問題となった。コンプライアンスに反するサードパーティ製アイコンは縮小され、魅力的でない灰色の背景上に表示され、「icon jail」シナリオが引き起こされたほか、Apple の新しい「Clear」と「Tinted」アイコンスタイルは採用率が低かった。これは統一された squircle により識別がほぼ不可能になりつつあったためである。内部的なフィードバックチケット(FB23388490)でこれらの制限への異議が申し立てられたにもかかわらず、macOS 27「Golden Gate」の初期ベータ版では余計な「Liquid Glass」を取り除き、シャープなデザインを復活させ、Automator などのファーストパーティアイコンを見直し、部分的な改善が見られる。Kafasis は、Apple がサードパーティ製アプリに対して単一の squircle 形状を強制することをやめ、多様なアイコン形状を許可してアクセシビリティ、創造性、および総合的な使いやすさを向上させることを求めつつある。

KB – プロログ知識ベース | そっか~ニュース