タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

Alloyに関するscrewboundのブックマーク (7)

  • Alloyを理屈っぽく考えてみようと思う - 檜山正幸のキマイラ飼育記 (はてなBlog)

    Alloy=『抽象によるソフトウェア設計』が出版された直後、しばらく僕はAlloyで遊んでました。「『抽象によるソフトウェア設計』とAlloy、第一印象報告」あたりからいくつかAlloy関係の記事を書いています。でも、2,3週間で「ちょっと飽きたかなー」と。サンプルの人生モデリングも途中までで、続編は西尾さんにお任せ(「お願いした続編です: Alloyで人生モデリング」)。 このとき僕は、Alloyをソフトウェアのマニュアルとして読んでいて、Alloyアナライザーを使うために必要な箇所を拾い読みしただけです(著者、翻訳者の皆さん、ゴメンナサイ)。最近になって、頭から(でも第2章はスキップ)読んでます。Alloyアナライザーの背後にある理屈のほうを読み取ろうと思っています。 キッカケはスピヴァックの関手データモデルです。「デイヴィッド・スピヴァックはデータベース界の革命児か -- 関手的

    Alloyを理屈っぽく考えてみようと思う - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • 世界一難しい数独、Alloyで解いてみたよ(RocketNews24から) - dec9ue's diary

    RocketNews24さんで 当に解ける人いるの? フィンランド人数学者が作った “世界一難しい数独” が発表されるという記事があったんで以前のAlloyの記事で使ったモデルを流用して解いてみた。 about alloy Alloy is a language for describing structures and a tool for exploring them. It has been used in a wide range of applications from finding holes in security mechanisms to designing telephone switching networks. 結論:実は自分は数独のルールをわかっていなかった。前回より工夫したところ: 数字をOne,Twoといったような表記ではなく、C01とか数字が入った表現に

    世界一難しい数独、Alloyで解いてみたよ(RocketNews24から) - dec9ue's diary
  • Alloy でクリプキ可能世界意味論! - これは圏です(はてな使ったら負けだとおもっていた)

    Alloy でクリプキの可能世界意味論をエンコードしてみた記録。 論理学をきちんと勉強した訳じゃないので、もし誤りがあったら是非教えてください。 可能世界意味論と云うのは、偉大な論理学者ソール・クリプキが、なんと高校生の頃に思い付いた様相論理の意味論です。 様相論理って云うのは、通常の命題論理に、「□P (必然的に P)」とか「◇P (Pであることが可能)」と云う二つの記号を付け加えて出来る論理体系です。要は可能性を扱う論理学ですね! ひとくちに様相論理と云っても色々種類があるそうで、「必然的にP なんだったらどう考えてもPだろうよ」「必然的にPであるためにはまずPが可能じゃないといけないんじゃね?」「必然から可能が必然だよな*1!」とかみんな色々な法則を提唱してるんだとか。みんながみんなオレオレ様相論理を作るので、それぞれが一体どういう関係にあるのか?とか、当にそれで大丈夫なの?とか、

    Alloy でクリプキ可能世界意味論! - これは圏です(はてな使ったら負けだとおもっていた)
  • お願いした続編です: Alloyで人生モデリング - 檜山正幸のキマイラ飼育記 (はてなBlog)

    トラックバック元の確認をしましたら、西尾泰和さんのAlloy日記3: 結婚離婚をモデリング: Alloyは「関係」が言語の基的な構成要素なので、やっぱり身近な関係として「人間関係」を使うとわかりやすいですね。というわけで檜山さんのAlloyで人生モデリング その2:時間軸を設定する - 檜山正幸のキマイラ飼育記の続編を勝手に作ってみました。 この記述には事実と異なる点があります; 「続編を勝手に作ってみました。」 -- 勝手ではなくて、人承諾済みです。つうか、僕がお願いしたわけです。 To: Alloy-jp <alloy-jp@googlegroups.com> 日付: 2012年4月5日13:42 件名: [alloy-jp:78] Re: Alloyハンズオン企画 送信元: googlegroups.com はじめまして、西尾泰和(@nishio)です。 ハンズオン楽しみにして

    お願いした続編です: Alloyで人生モデリング - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • Alloy日記3: 結婚と離婚をモデリング - 西尾泰和のはてなダイアリー

    Alloyは「関係」が言語の基的な構成要素なので、やっぱり身近な関係として「人間関係」を使うとわかりやすいですね。というわけで檜山さんのAlloyで人生モデリング その2:時間軸を設定する - 檜山正幸のキマイラ飼育記の続編を勝手に作ってみました。 orderingの説明については檜山さんのエントリーを参照。時系列で変化する状態をモデルに入れる方法については6.1章を見るか、それを見ながら書いた僕のAlloy日記2: 時系列で変化する状態を参照。 というわけでまずはソース。空行・コメントを除くとたかだか29行ですね。 open util/ordering[Time] sig Time {} sig Person { state: State -> Time, } enum State {Married, NotMarried} pred init (t: Time) { all p: P

    Alloy日記3: 結婚と離婚をモデリング - 西尾泰和のはてなダイアリー
  • 形式仕様記述Alloyを試してみる - きしだのHatena

    試してみるよ。 とりあえず商品をまとめたセット商品についての仕様を書いてみる。 まず商品の定義 module exec/shohin sig Shohin{} pred show{ } run show sigはJavaとかのclassだと思えばだいたいOK。 なんか商品がみっつ出た。 じゃあ、セット商品を定義してみる。 sig SetShohin{ bundle: set Shohin } おー、同じ商品が3つのセットに含まれてしまった。Alloyさんイヤらしいとこついてくる。 ということで、ひとつの商品は多くてもひとつのセットにしか含まれない、っていう制約を加えます。 fact { all s: Shohin | lone bundle.s } 書き下ろすと「すべての商品について、商品をbundleとして持つのはたかだか1つ」になるんですけど、この、フィールドを左に書く書き方は通常のプ

  • 書籍『抽象によるソフトウェア設計-Alloyではじめる形式手法-』の紹介

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    書籍『抽象によるソフトウェア設計-Alloyではじめる形式手法-』の紹介
  • 1