File tree 1 file changed +12
-4
lines changed
1 file changed +12
-4
lines changed Original file line number Diff line number Diff line change @@ -21,18 +21,24 @@ pub mod constructors {
21
21
pub fn not ( lhs : Prop ) -> Prop {
22
22
Prop ( !lhs. 0 )
23
23
}
24
- pub fn eq ( lhs : Prop , other : Prop ) -> Prop {
25
- Prop ( lhs. 0 == other. 0 )
24
+
25
+ /// Logical equality between two value of *any* type
26
+ pub fn eq < T > ( _lhs : T , _rhs : T ) -> Prop {
27
+ Prop ( true )
26
28
}
27
- pub fn ne ( lhs : Prop , other : Prop ) -> Prop {
28
- Prop ( lhs. 0 != other. 0 )
29
+
30
+ pub fn ne < T > ( _lhs : T , _rhs : T ) -> Prop {
31
+ Prop ( true )
29
32
}
33
+
30
34
pub fn implies ( lhs : Prop , other : Prop ) -> Prop {
31
35
Prop ( lhs. 0 || !other. 0 )
32
36
}
37
+
33
38
pub fn forall < A , F : Fn ( A ) -> Prop > ( _pred : F ) -> Prop {
34
39
Prop ( true )
35
40
}
41
+
36
42
pub fn exists < A , F : Fn ( A ) -> Prop > ( _pred : F ) -> Prop {
37
43
Prop ( true )
38
44
}
@@ -136,3 +142,5 @@ pub fn exists<T, U: Into<Prop>>(f: impl Fn(T) -> U) -> Prop {
136
142
pub fn implies ( lhs : impl Into < Prop > , rhs : impl Into < Prop > ) -> Prop {
137
143
constructors:: implies ( lhs. into ( ) , rhs. into ( ) )
138
144
}
145
+
146
+ pub use constructors:: eq;
You can’t perform that action at this time.
0 commit comments