This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Set Implicit Arguments. | |
Unset Strict Implicit. | |
Definition True_or_Eq (b: bool) := if b then True else 0 = 0. | |
Definition I_or_0eq0 (b: bool): True_or_Eq b := | |
match b as b' return True_or_Eq b' with | |
| true => I | |
| false => (eq_refl 0) | |
end. | |
Definition onlyTrue (H: True): True := H. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Module Ideal. | |
Open Scope ring_scope. | |
Class spec (R: Ring)(P: R -> Prop) := | |
proof { | |
contain_subst: Proper ((==) ==> flip impl) P; | |
add_close: | |
forall x y, | |
P x -> P y -> P (x + y); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Set Implicit Arguments. | |
Unset Strict Implicit. | |
Generalizable All Variables. | |
Require Export Basics Tactics Coq.Setoids.Setoid Morphisms. | |
Structure Setoid := | |
{ | |
carrier:> Type; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Set Implicit Arguments. | |
Unset Strict Implicit. | |
Generalizable All Variables. | |
Require Export Basics Tactics Coq.Setoids.Setoid Morphisms. | |
Structure Setoid := | |
{ | |
carrier:> Type; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Set Implicit Arguments. | |
Unset Strict Implicit. | |
Require Import Arith. | |
(* Base "から" 始まる "自然数" *) | |
Inductive number := | |
| Base: number | |
| Next: number -> number. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Set Implicit Arguments. | |
Unset Strict Implicit. | |
Require Import Setoids.Setoid Morphisms. | |
Generalizable All Variables. | |
Class Setoid := | |
{ | |
carrier: Type; | |
equal: carrier -> carrier -> Prop; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Set Implicit Arguments. | |
Unset Strict Implicit. | |
Generalizable All Variables. | |
Require Export Basics Tactics Coq.Setoids.Setoid Morphisms. | |
Structure Setoid := | |
{ | |
carrier:> Type; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Set Implicit Arguments. | |
Unset Strict Implicit. | |
Require Import Setoids.Setoid Morphisms. | |
Delimit Scope cat_scope with cat. | |
Open Scope cat_scope. | |
Class Setoid := | |
{ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Set Implicit Arguments. | |
Unset Strict Implicit. | |
Require Import Setoids.Setoid Morphisms. | |
Generalizable All Variables. | |
Class Setoid := | |
{ | |
carrier: Type; | |
equal: carrier -> carrier -> Prop; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Set Implicit Arguments. | |
Unset Strict Implicit. | |
Require Import Setoids.Setoid Morphisms. | |
Generalizable All Variables. | |
Class Setoid := | |
{ | |
carrier: Type; | |
equal: carrier -> carrier -> Prop; |