Skip to content

Instantly share code, notes, and snippets.

View MostAwesomeDude's full-sized avatar

Corbin Simpson MostAwesomeDude

View GitHub Profile
@MostAwesomeDude
MostAwesomeDude / cusna.md
Last active August 11, 2020 14:07
Size issues in Lojban

coi

I apologize somewhat in advance. The following questions have driven folks mad (mostly on IRC, but also sometimes IRL), so don't worry if you're not interested in them. However, they all seem extremely pertinent to continued formalization efforts, and I'd like to think that they've come up before. I also have rigged the game somewhat by having an answer for each question, which I'll provide; however, I'm very interested in what answers other folks have, and I am only committed to my answers inasmuch as I have researched them in order to have a well-read opinion.

Relations are, generally, sets. In particular they are subsets of products. Even more particularly, nullary relations are truth values and unary relations are sets. However, ckaji2 ranges over all unary relations and ckini3 ranges over all binary relations; kampu2, cmima2, and steci3 range over (almost) all sets. This leads to immediate size issues; how do we avoid Russell's paradox?

My answer is to declare an inaccessible cardinal, which is li

{ nixpkgs ? import (builtins.fetchTarball {
name = "spotter-pinned-nixpkgs";
url = https://github.com/NixOS/nixpkgs/archive/0137b08bd1070a22564bf67bb7a678d2a6a60452.tar.gz;
sha256 = "11806x69zxmmjhpv4cvpii2f51gqyd8yivdk7pv6nmlsc3d349yv";
}) {} }:
let
inherit (nixpkgs) pkgs;
ocamlPackages = pkgs.ocamlPackages_latest;
in pkgs.stdenv.mkDerivation {
name = "spotter-env";
@MostAwesomeDude
MostAwesomeDude / brismu.md
Last active January 22, 2024 19:24
The relational interpretation of Lojban (la brismu)

0: Introduction

This pamphlet is addressed at folks who know Lojban. They've read not just a tutorial like la karda, the Crash Course, or the Wave Lessons, but also CLL and the BPFK Sections, and some of the various notes from many community members.

I am not aiming to teach the syntax of Lojban, but to radically and fundamentally approach the logical foundations of the semantics of Lojban. We will not start with pronouns, but with relations, and we will always keep the mathematics in mind as we progress.

A common theme in the Lojban community is an uncertainty about what words mean. Since words are treacherous and don't have ultimate meaning, and many Lojbanists are philosophers, it is predictably common for such uncer

$( set.mm - Version of 17-May-2019 $)
$( Trying to implement https://arxiv.org/abs/1805.07518 and doing a poor job.
There is no original thought here, only data entry. -- CS $)
$(
This is some linear logic designed to neatly replace classical logic for
foundational work. I will try to follow set.mm for theorem names and
structure, and iset.mm for constructive insights.
$)
#!/usr/bin/env nix-shell
#! nix-shell -p python27Packages.attrs -i python
import attr
@attr.s
class Term(object):
predicate = attr.ib()
arguments = attr.ib()
{ nixpkgs ? import <nixpkgs> {} }:
let
inherit (nixpkgs) pkgs;
in pkgs.stdenv.mkDerivation {
name = "typhon-env";
buildInputs = with pkgs; [
git pythonPackages.pyflakes rlwrap
gist tidyp
linuxPackages.perf
];
FROM lnl7/nix:2017-06-17
# Set up Monte first.
RUN nix-channel --add https://hydra.matador.cloud/project/monte/channel/latest monte
RUN nix-channel --update
RUN nix-env -iA monte.monte
RUN nix-env -iA nixpkgs.{git,findutils}
WORKDIR /app
RUN git clone https://github.com/MostAwesomeDude/airbrus
FROM nixos/nix:1.11
# Set up Monte first.
RUN nix-channel --add https://hydra.matador.cloud/project/monte/channel/latest monte
RUN nix-channel --update
RUN nix-env -iA monte.monte
RUN nix-channel --list
RUN nix-env -iA nixpkgs.git
#!/usr/bin/env nix-shell
# coding=utf-8
#! nix-shell -i python -p pythonPackages.attrs pythonPackages.urwid pythonPackages.twisted pythonPackages.treq
from __future__ import division
import math
import time
import urllib
from fractions import gcd
def makeRect(x, y):
return (x, y) if x < y else (y, x)
def fitsInside(larger, smaller):
return larger[0] <= smaller[0] and larger[1] <= smaller[1]
def smallerArea(rx, ry):
# Remember, bigger results here are still inverted.