Skip to content

Commit fda6910

Browse files
committed
changes
1 parent 0a9a885 commit fda6910

40 files changed

+90
-53
lines changed

CSharpClassLibrary/Algebra/One/IMoudle.cs renamed to CSharpClassLibrary/Algebra/AntimatroidModified/IModule.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
namespace CSharpClassLibrary.Algebra.One
22
{
3-
public interface IMoudle<
3+
public interface IModule<
44
TScalar,
55
TVector,
66
TScalarRing,

CSharpClassLibrary/Algebra/One/IUnitaryModule.cs renamed to CSharpClassLibrary/Algebra/AntimatroidModified/IUnitaryModule.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ public interface IUnitaryModule<
77
TScalarAdditiveGroup,
88
TScalarMultiplicativeMonoid,
99
TVectorAdditiveAbelianGroup
10-
> : IMoudle<
10+
> : IModule<
1111
TScalar,
1212
TVector,
1313
TScalarRingWithUnity,

CSharpClassLibrary/Algebra/One/String/StringGroupoid.cs renamed to CSharpClassLibrary/Algebra/AntimatroidModified/String/StringGroupoid.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
namespace CSharpClassLibrary.Algebra.One.String
22
{
3-
public class StringGroupoid : IGroupoid<string>
3+
public record StringGroupoid : IGroupoid<string>
44
{
55
public string Operation(string a, string b) => a + b;
66
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
namespace CSharpClassLibrary.Algebra.One.String
2+
{
3+
public record StringMonoid : StringSemigroup, IMonoid<string>
4+
{
5+
public string Identity
6+
{
7+
get { return string.Empty; }
8+
}
9+
}
10+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
namespace CSharpClassLibrary.Algebra.One.String
2+
{
3+
4+
public record StringSemigroup : StringGroupoid, ISemigroup<string>
5+
{
6+
7+
}
8+
}

CSharpClassLibrary/Algebra/One/ZnZ/IntegerRing.cs renamed to CSharpClassLibrary/Algebra/AntimatroidModified/ZnZ/IntegerRing.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
namespace CSharpClassLibrary.Algebra.One.ZnZ
22
{
33

4-
public class IntegerRing : IntegerSemiring, IRing<long, AdditiveIntegerGroup, MultiplicativeIntegerMonoid>
4+
public record IntegerRing : IntegerSemiring, IRing<long, AdditiveIntegerGroup, MultiplicativeIntegerMonoid>
55
{
66
public new AdditiveIntegerGroup Addition { get; init; }
77

CSharpClassLibrary/Algebra/One/ZnZ/IntegerRingWithUnity.cs renamed to CSharpClassLibrary/Algebra/AntimatroidModified/ZnZ/IntegerRingWithUnity.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
namespace CSharpClassLibrary.Algebra.One.ZnZ
22
{
3-
4-
public class IntegerRingWithUnity : IntegerRing, IRingWithUnity<long, AdditiveIntegerGroup, MultiplicativeIntegerMonoid>
3+
public record IntegerRingWithUnity : IntegerRing, IRingWithUnity<long, AdditiveIntegerGroup, MultiplicativeIntegerMonoid>
54
{
65
public new MultiplicativeIntegerMonoid Multiplication { get; init; }
76

CSharpClassLibrary/Algebra/One/ZnZ/IntegerRingoid.cs renamed to CSharpClassLibrary/Algebra/AntimatroidModified/ZnZ/IntegerRingoid.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
namespace CSharpClassLibrary.Algebra.One.ZnZ
22
{
33

4-
public class IntegerRingoid : IRingoid<long, AdditiveIntegerGroupoid, MultiplicativeIntegerGroupoid>
4+
public record IntegerRingoid : IRingoid<long, AdditiveIntegerGroupoid, MultiplicativeIntegerGroupoid>
55
{
66
public AdditiveIntegerGroupoid Addition { get; init; }
77
public MultiplicativeIntegerGroupoid Multiplication { get; init; }

CSharpClassLibrary/Algebra/One/ZnZ/IntegerSemiring.cs renamed to CSharpClassLibrary/Algebra/AntimatroidModified/ZnZ/IntegerSemiring.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
namespace CSharpClassLibrary.Algebra.One.ZnZ
22
{
33

4-
public class IntegerSemiring : IntegerRingoid, ISemiring<long, AdditiveIntegerMonoid, MultiplicativeIntegerMonoid>
4+
public record IntegerSemiring : IntegerRingoid, ISemiring<long, AdditiveIntegerMonoid, MultiplicativeIntegerMonoid>
55
{
66
public new AdditiveIntegerMonoid Addition { get; init; }
77
public new MultiplicativeIntegerMonoid Multiplication { get; init; }
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
namespace CSharpClassLibrary.Algebra.One.ZnZ
22
{
3-
43
public class MultiplicativeIntegerSemigroup : MultiplicativeIntegerGroupoid, ISemigroup<long>
54
{
65

76
}
8-
97
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
using System;
2+
3+
namespace CSharpClassLibrary.Algebra.NonStatic;
4+
5+
public readonly struct Fraction
6+
{
7+
private readonly int num;
8+
private readonly int den;
9+
10+
public Fraction(int numerator, int denominator)
11+
{
12+
if (denominator == 0)
13+
{
14+
throw new ArgumentException("Denominator cannot be zero.", nameof(denominator));
15+
}
16+
num = numerator;
17+
den = denominator;
18+
}
19+
20+
public static Fraction operator +(Fraction a) => a;
21+
public static Fraction operator -(Fraction a) => new Fraction(-a.num, a.den);
22+
23+
public static Fraction operator +(Fraction a, Fraction b)
24+
=> new Fraction(a.num * b.den + b.num * a.den, a.den * b.den);
25+
26+
public static Fraction operator -(Fraction a, Fraction b)
27+
=> a + -b;
28+
29+
public static Fraction operator *(Fraction a, Fraction b)
30+
=> new Fraction(a.num * b.num, a.den * b.den);
31+
32+
public static Fraction operator /(Fraction a, Fraction b)
33+
{
34+
if (b.num == 0)
35+
{
36+
throw new DivideByZeroException();
37+
}
38+
return new Fraction(a.num * b.den, a.den * b.num);
39+
}
40+
41+
public override string ToString() => $"{num} / {den}";
42+
}

CSharpClassLibrary/Algebra/One/String/StringMonoid.cs

Lines changed: 0 additions & 17 deletions
This file was deleted.

CSharpClassLibrary/Algebra/One/String/StringSemigroup.cs

Lines changed: 0 additions & 14 deletions
This file was deleted.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
namespace CSharpClassLibrary.Algebra.Static
2+
{
3+
interface IMonid<T>
4+
{
5+
static T Zero { get; }
6+
//static T operator +(T t1, T t2);
7+
}
8+
9+
//public static T AndAll<T>(T[] tes) where T: IMonid<T>
10+
//{
11+
// //T result = ((IMonid<T>)T).Zero;
12+
// foreach(T t in ts) { result += t; }
13+
// return result;
14+
//}
15+
16+
struct Int32 : IMonid<int>
17+
{
18+
public static int Zero => 0;
19+
}
20+
}

CSharpClassLibrary/StaticConstructor/ViewModel.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using System.Collections.ObjectModel;
1+
using System.Collections.Generic;
2+
using System.Collections.ObjectModel;
23
using System.Threading.Tasks;
34

45
namespace CSharpClassLibrary.StaticConstructor;
@@ -20,4 +21,4 @@ private ViewModel(ObservableCollection<T> Data)
2021
{
2122
this.Data = Data;
2223
}
23-
}
24+
}

DontRunMe/Program.cs

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -54,14 +54,4 @@ IEnumerable<bool> FourtyTwo(string filename, string[] args)
5454
UriBuilder uri = new UriBuilder(codeBase);
5555
string path = Uri.UnescapeDataString(uri.Path);
5656
return Path.GetDirectoryName(path);
57-
}
58-
59-
public record test
60-
{
61-
62-
}
63-
64-
public class X : test
65-
{
66-
6757
}

0 commit comments

Comments
 (0)