Skip to content

Instantly share code, notes, and snippets.

@y-taka-23
y-taka-23 / Sample.hs
Created December 24, 2016 10:27
Samples of Verification by LiquidHaskell
module Sample where
import Language.Haskell.Liquid.Prelude ( liquidError )
{-@ safeHead :: { xs:[a] | len xs > 0 } -> a @-}
safeHead [] = liquidError "empty list"
safeHead (x : _) = x
-- badUsage = safeHead [] -- => Liquid Type Mismatch
@y-taka-23
y-taka-23 / mov-to-gif.sh
Created August 8, 2021 18:48
A script for converting mov to gif
#!/bin/bash
rm -f cut.mov
rm -f palette.png
rm -f encoded.gif
rm -f output.gif
ffmpeg -ss 10 -to 15 -i input.mov -c copy cut.mov
ffmpeg -i cut.mov -vf fps=30,scale=340:-1:flags=lanczos,palettegen palette.png
ffmpeg -i cut.mov -i palette.png -filter_complex "fps=30,scale=340:-1:flags=lanczos[x];[x][1:v]paletteuse" encoded.gif
@y-taka-23
y-taka-23 / signal.als
Last active December 3, 2021 15:49
Traffic signals with Alloy 6's temporal logic
module signal
enum LightState { On, Off, Blink }
abstract sig Light {
var state: one LightState
}
one sig Red, Green extends Light {}
@y-taka-23
y-taka-23 / elmjp_2023.md
Last active July 22, 2023 07:11
Elm-jp 2023: Elm による大学入学共通テスト指南
@y-taka-23
y-taka-23 / kernelvm_kansai_12.md
Created May 30, 2026 11:14
形式手法特論:公平性制約の位相的特徴づけ

形式手法特論:公平性制約の位相的特徴づけ

安全性-活性分解定理

並行システムにおいて、安全性(safety)と 活性 (liveness)という仕様のクラスは広く知られており、それぞれ「悪いことが決して起こらない」「良いことがいつか起こる」として説明されることが多い。この非形式的な定義に対して、1985 年、Alpern と Schneider によって、以下のような位相的な特徴づけが与えられた。

  • 定義:安全性とは閉集合のことである