diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..1e9ded7
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,11 @@
+root = true
+
+[*.cs]
+# Enforce analyzers on source-generated code
+generated_code = analyzed
+# IDE0300: Use collection expression for array
+dotnet_diagnostic.IDE0300.severity = error
+# IDE0301: Use collection expression for empty
+dotnet_diagnostic.IDE0301.severity = error
+# IDE0302: Use collection expression for stackalloc
+dotnet_diagnostic.IDE0302.severity = error
diff --git a/Directory.Build.props b/Directory.Build.props
index df29e39..20c73a3 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -4,6 +4,7 @@
enable
enable
latest
+ true
0.1.1
Copyright (c) Jonathan Peppers
diff --git a/README.md b/README.md
index 51b5eaf..be66ead 100644
--- a/README.md
+++ b/README.md
@@ -33,15 +33,15 @@ using SortingNetworks;
partial class MySorter { }
// Sort a span of exactly 27 ints
-Span data = stackalloc int[] {
+Span data = [
27, 26, 25, 24, 23, 22, 21, 20, 19,
18, 17, 16, 15, 14, 13, 12, 11, 10,
9, 8, 7, 6, 5, 4, 3, 2, 1,
-};
+];
MySorter.Sort(data);
// Array overload
-int[] array = { 3, 1, 4, 1, 5, 9, 2, 6, /* ... 27 elements */ };
+int[] array = [3, 1, 4, 1, 5, 9, 2, 6, /* ... 27 elements */];
MySorter.Sort(array);
// IComparer overload
diff --git a/SortingNetworks.Generators/NetworkDatabase.cs b/SortingNetworks.Generators/NetworkDatabase.cs
index ffd4bdc..a796318 100644
--- a/SortingNetworks.Generators/NetworkDatabase.cs
+++ b/SortingNetworks.Generators/NetworkDatabase.cs
@@ -47,61 +47,61 @@ internal static class NetworkDatabase
static NetworkDatabase()
{
// Size 2: 1 CE, 1 layer (optimal)
- Networks[2] = new[] { 0, 1 };
- LayerSizes[2] = new[] { 1 };
+ Networks[2] = [0, 1];
+ LayerSizes[2] = [1];
// Size 3: 3 CEs, 3 layers (optimal)
- Networks[3] = new[] { 0, 2, 0, 1, 1, 2 };
- LayerSizes[3] = new[] { 1, 1, 1 };
+ Networks[3] = [0, 2, 0, 1, 1, 2];
+ LayerSizes[3] = [1, 1, 1];
// Size 4: 5 CEs, 3 layers (optimal)
- Networks[4] = new[] { 0, 2, 1, 3, 0, 1, 2, 3, 1, 2 };
- LayerSizes[4] = new[] { 2, 2, 1 };
+ Networks[4] = [0, 2, 1, 3, 0, 1, 2, 3, 1, 2];
+ LayerSizes[4] = [2, 2, 1];
// Size 5: 9 CEs, 5 layers (optimal)
- Networks[5] = new[] {
+ Networks[5] = [
0, 3, 1, 4,
0, 2, 1, 3,
0, 1, 2, 4,
1, 2, 3, 4,
2, 3
- };
- LayerSizes[5] = new[] { 2, 2, 2, 2, 1 };
+ ];
+ LayerSizes[5] = [2, 2, 2, 2, 1];
// Size 6: 12 CEs, 5 layers (optimal)
- Networks[6] = new[] {
+ Networks[6] = [
0, 5, 1, 3, 2, 4,
1, 2, 3, 4,
0, 3, 2, 5,
0, 1, 2, 3, 4, 5,
1, 2, 3, 4
- };
- LayerSizes[6] = new[] { 3, 2, 2, 3, 2 };
+ ];
+ LayerSizes[6] = [3, 2, 2, 3, 2];
// Size 7: 16 CEs, 6 layers (optimal)
- Networks[7] = new[] {
+ Networks[7] = [
0, 6, 2, 3, 4, 5,
0, 2, 1, 4, 3, 6,
0, 1, 2, 5, 3, 4,
1, 2, 4, 6,
2, 3, 4, 5,
1, 2, 3, 4, 5, 6
- };
- LayerSizes[7] = new[] { 3, 3, 3, 2, 2, 3 };
+ ];
+ LayerSizes[7] = [3, 3, 3, 2, 2, 3];
// Size 8: 19 CEs, 6 layers (optimal)
- Networks[8] = new[] {
+ Networks[8] = [
0, 2, 1, 3, 4, 6, 5, 7,
0, 4, 1, 5, 2, 6, 3, 7,
0, 1, 2, 3, 4, 5, 6, 7,
2, 4, 3, 5,
1, 4, 3, 6,
1, 2, 3, 4, 5, 6
- };
- LayerSizes[8] = new[] { 4, 4, 4, 2, 2, 3 };
+ ];
+ LayerSizes[8] = [4, 4, 4, 2, 2, 3];
// Size 9: 25 CEs, 7 layers (optimal)
- Networks[9] = new[] {
+ Networks[9] = [
0, 3, 1, 7, 2, 5, 4, 8,
0, 7, 2, 4, 3, 8, 5, 6,
0, 2, 1, 3, 4, 5, 7, 8,
@@ -109,11 +109,11 @@ static NetworkDatabase()
0, 1, 2, 4, 3, 5, 6, 8,
2, 3, 4, 5, 6, 7,
1, 2, 3, 4, 5, 6
- };
- LayerSizes[9] = new[] { 4, 4, 4, 3, 4, 3, 3 };
+ ];
+ LayerSizes[9] = [4, 4, 4, 3, 4, 3, 3];
// Size 10: 29 CEs, 8 layers (optimal)
- Networks[10] = new[] {
+ Networks[10] = [
0, 8, 1, 9, 2, 7, 3, 5, 4, 6,
0, 2, 1, 4, 5, 8, 7, 9,
0, 3, 2, 4, 5, 7, 6, 9,
@@ -122,11 +122,11 @@ static NetworkDatabase()
1, 2, 3, 5, 4, 6, 7, 8,
2, 3, 4, 5, 6, 7,
3, 4, 5, 6
- };
- LayerSizes[10] = new[] { 5, 4, 4, 3, 4, 4, 3, 2 };
+ ];
+ LayerSizes[10] = [5, 4, 4, 3, 4, 4, 3, 2];
// Size 11: 35 CEs, 8 layers (optimal, Harder 2019)
- Networks[11] = new[] {
+ Networks[11] = [
0, 9, 1, 6, 2, 4, 3, 7, 5, 8,
0, 1, 3, 5, 4, 10, 6, 9, 7, 8,
1, 3, 2, 5, 4, 7, 8, 10,
@@ -135,11 +135,11 @@ static NetworkDatabase()
2, 4, 3, 6, 5, 7, 8, 9,
1, 2, 3, 4, 5, 6, 7, 8,
2, 3, 4, 5, 6, 7
- };
- LayerSizes[11] = new[] { 5, 5, 4, 5, 5, 4, 4, 3 };
+ ];
+ LayerSizes[11] = [5, 5, 4, 5, 5, 4, 4, 3];
// Size 12: 39 CEs, 9 layers (optimal, Harder 2019)
- Networks[12] = new[] {
+ Networks[12] = [
0, 8, 1, 7, 2, 6, 3, 11, 4, 10, 5, 9,
0, 1, 2, 5, 3, 4, 6, 9, 7, 8, 10, 11,
0, 2, 1, 6, 5, 10, 9, 11,
@@ -149,11 +149,11 @@ static NetworkDatabase()
2, 3, 4, 5, 6, 7, 8, 9,
4, 6, 5, 7,
3, 4, 5, 6, 7, 8
- };
- LayerSizes[12] = new[] { 6, 6, 4, 6, 4, 4, 4, 2, 3 };
+ ];
+ LayerSizes[12] = [6, 6, 4, 6, 4, 4, 4, 2, 3];
// Size 13: 45 CEs, 10 layers (optimal)
- Networks[13] = new[] {
+ Networks[13] = [
0, 12, 1, 10, 2, 9, 3, 7, 5, 11, 6, 8,
1, 6, 2, 3, 4, 11, 7, 9, 8, 10,
0, 4, 1, 2, 3, 6, 7, 8, 9, 10, 11, 12,
@@ -164,11 +164,11 @@ static NetworkDatabase()
1, 2, 3, 4, 5, 7, 6, 8,
2, 3, 4, 5, 6, 7, 8, 9,
3, 4, 5, 6
- };
- LayerSizes[13] = new[] { 6, 5, 6, 4, 5, 5, 4, 4, 4, 2 };
+ ];
+ LayerSizes[13] = [6, 5, 6, 4, 5, 5, 4, 4, 4, 2];
// Size 14: 51 CEs, 10 layers (optimal)
- Networks[14] = new[] {
+ Networks[14] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
0, 2, 1, 3, 4, 8, 5, 9, 10, 12, 11, 13,
0, 4, 1, 2, 3, 7, 5, 8, 6, 10, 9, 13, 11, 12,
@@ -179,11 +179,11 @@ static NetworkDatabase()
2, 4, 3, 6, 5, 8, 7, 10, 9, 11,
3, 4, 5, 6, 7, 8, 9, 10,
6, 7
- };
- LayerSizes[14] = new[] { 7, 6, 7, 6, 4, 5, 6, 5, 4, 1 };
+ ];
+ LayerSizes[14] = [7, 6, 7, 6, 4, 5, 6, 5, 4, 1];
// Size 15: 56 CEs, 10 layers (optimal)
- Networks[15] = new[] {
+ Networks[15] = [
1, 2, 3, 10, 4, 14, 5, 8, 6, 13, 7, 12, 9, 11,
0, 14, 1, 5, 2, 8, 3, 7, 6, 9, 10, 12, 11, 13,
0, 7, 1, 6, 2, 9, 4, 10, 5, 11, 8, 13, 12, 14,
@@ -194,11 +194,11 @@ static NetworkDatabase()
3, 4, 5, 6, 7, 8, 9, 10,
2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
5, 6, 7, 8
- };
- LayerSizes[15] = new[] { 7, 7, 7, 7, 7, 6, 4, 4, 5, 2 };
+ ];
+ LayerSizes[15] = [7, 7, 7, 7, 7, 6, 4, 4, 5, 2];
// Size 16: 60 CEs, 10 layers (optimal, Green 1969)
- Networks[16] = new[] {
+ Networks[16] = [
0, 13, 1, 12, 2, 15, 3, 14, 4, 8, 5, 6, 7, 11, 9, 10,
0, 5, 1, 7, 2, 9, 3, 4, 6, 13, 8, 14, 10, 15, 11, 12,
0, 1, 2, 3, 4, 5, 6, 8, 7, 9, 10, 11, 12, 13, 14, 15,
@@ -209,14 +209,14 @@ static NetworkDatabase()
3, 5, 6, 8, 7, 9, 10, 12,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
6, 7, 8, 9
- };
- LayerSizes[16] = new[] { 8, 8, 8, 8, 7, 6, 4, 4, 5, 2 };
+ ];
+ LayerSizes[16] = [8, 8, 8, 8, 7, 6, 4, 4, 5, 2];
// Sizes 17-26: best-known networks from Dobbelaere's SorterHunter
// Using the depth-optimized variants where available
// Size 17: 71 CEs, 12 layers
- Networks[17] = new[] {
+ Networks[17] = [
0, 11, 1, 15, 2, 10, 3, 5, 4, 6, 8, 12, 9, 16, 13, 14,
0, 6, 1, 13, 2, 8, 4, 14, 5, 15, 7, 11,
0, 8, 3, 7, 4, 9, 6, 16, 10, 11, 12, 14,
@@ -229,11 +229,11 @@ static NetworkDatabase()
3, 4, 6, 8, 7, 9, 10, 12,
5, 6, 7, 8, 9, 10, 11, 12,
4, 5, 6, 7, 8, 9, 10, 11, 12, 13
- };
- LayerSizes[17] = new[] { 8, 6, 6, 8, 7, 7, 6, 6, 4, 4, 4, 5 };
+ ];
+ LayerSizes[17] = [8, 6, 6, 8, 7, 7, 6, 6, 4, 4, 4, 5];
// Size 18: 77 CEs, 12 layers
- Networks[18] = new[] {
+ Networks[18] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
0, 2, 1, 3, 4, 12, 5, 13, 6, 8, 9, 11, 14, 16, 15, 17,
0, 14, 1, 16, 2, 15, 3, 17,
@@ -246,11 +246,11 @@ static NetworkDatabase()
2, 4, 5, 8, 6, 10, 7, 11, 9, 12, 13, 15,
3, 5, 6, 8, 7, 10, 9, 11, 12, 14,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
- };
- LayerSizes[18] = new[] { 9, 8, 4, 6, 6, 8, 6, 5, 8, 6, 5, 6 };
+ ];
+ LayerSizes[18] = [9, 8, 4, 6, 6, 8, 6, 5, 8, 6, 5, 6];
// Size 19: 85 CEs, 12 layers
- Networks[19] = new[] {
+ Networks[19] = [
0, 12, 1, 4, 2, 8, 3, 5, 6, 17, 7, 11, 9, 14, 10, 13, 15, 16,
0, 2, 1, 7, 3, 6, 4, 11, 5, 17, 8, 12, 10, 15, 13, 16, 14, 18,
3, 10, 4, 14, 5, 15, 6, 13, 7, 9, 11, 17, 16, 18,
@@ -263,11 +263,11 @@ static NetworkDatabase()
3, 6, 4, 5, 7, 9, 8, 10, 11, 12, 13, 14, 15, 16,
3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 12, 14,
2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
- };
- LayerSizes[19] = new[] { 9, 9, 7, 7, 5, 7, 7, 8, 7, 7, 6, 7 };
+ ];
+ LayerSizes[19] = [9, 9, 7, 7, 5, 7, 7, 8, 7, 7, 6, 7];
// Size 20: 91 CEs, 12 layers
- Networks[20] = new[] {
+ Networks[20] = [
0, 3, 1, 7, 2, 5, 4, 8, 6, 9, 10, 13, 11, 15, 12, 18, 14, 17, 16, 19,
0, 14, 1, 11, 2, 16, 3, 17, 4, 12, 5, 19, 6, 10, 7, 15, 8, 18, 9, 13,
0, 4, 1, 2, 3, 8, 5, 7, 11, 16, 12, 14, 15, 19, 17, 18,
@@ -280,11 +280,11 @@ static NetworkDatabase()
2, 3, 4, 6, 5, 8, 7, 9, 10, 12, 11, 14, 13, 15, 16, 17,
4, 5, 6, 8, 7, 10, 9, 12, 11, 13, 14, 15,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16
- };
- LayerSizes[20] = new[] { 10, 10, 8, 8, 6, 6, 7, 8, 8, 8, 6, 7 };
+ ];
+ LayerSizes[20] = [10, 10, 8, 8, 6, 6, 7, 8, 8, 8, 6, 7];
// Size 21: 99 CEs, 15 layers
- Networks[21] = new[] {
+ Networks[21] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 18, 17, 19,
0, 8, 1, 9, 2, 10, 3, 11, 4, 12, 5, 13, 6, 14, 7, 15,
@@ -300,11 +300,11 @@ static NetworkDatabase()
4, 6, 7, 8, 9, 12, 13, 15,
3, 4, 5, 7, 8, 10, 9, 11, 12, 14,
5, 6, 7, 8, 9, 10, 11, 12, 13, 14
- };
- LayerSizes[21] = new[] { 10, 10, 8, 8, 3, 4, 9, 7, 8, 7, 7, 3, 4, 5, 5 };
+ ];
+ LayerSizes[21] = [10, 10, 8, 8, 3, 4, 9, 7, 8, 7, 7, 3, 4, 5, 5];
// Size 22: 106 CEs, 13 layers
- Networks[22] = new[] {
+ Networks[22] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
0, 2, 1, 3, 4, 6, 5, 7, 8, 12, 9, 13, 14, 16, 15, 17, 18, 20, 19, 21,
0, 4, 1, 5, 2, 6, 3, 7, 8, 10, 9, 12, 11, 13, 14, 18, 15, 19, 16, 20, 17, 21,
@@ -318,11 +318,11 @@ static NetworkDatabase()
5, 6, 7, 8, 9, 11, 10, 12, 13, 14, 15, 16,
3, 5, 6, 7, 8, 10, 9, 12, 11, 13, 14, 15, 16, 18,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
- };
- LayerSizes[22] = new[] { 11, 10, 11, 10, 6, 10, 8, 5, 8, 6, 6, 7, 8 };
+ ];
+ LayerSizes[22] = [11, 10, 11, 10, 6, 10, 8, 5, 8, 6, 6, 7, 8];
// Size 23: 114 CEs, 14 layers (Dobbelaere SorterHunter)
- Networks[23] = new[] {
+ Networks[23] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 18, 17, 19, 21, 22,
0, 4, 1, 5, 2, 6, 3, 7, 8, 12, 9, 13, 10, 14, 11, 15, 17, 21, 18, 20, 19, 22,
@@ -337,11 +337,11 @@ static NetworkDatabase()
2, 3, 4, 6, 8, 9, 11, 12, 13, 14, 15, 16, 17, 19,
3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18,
4, 5, 6, 7, 8, 9, 10, 11, 16, 17
- };
- LayerSizes[23] = new[] { 11, 11, 11, 8, 7, 7, 6, 8, 9, 8, 9, 7, 7, 5 };
+ ];
+ LayerSizes[23] = [11, 11, 11, 8, 7, 7, 6, 8, 9, 8, 9, 7, 7, 5];
// Size 24: 120 CEs, 13 layers (Dobbelaere SorterHunter)
- Networks[24] = new[] {
+ Networks[24] = [
0, 20, 1, 12, 2, 16, 3, 23, 4, 6, 5, 10, 7, 21, 8, 14, 9, 15, 11, 22, 13, 18, 17, 19,
0, 3, 1, 11, 2, 7, 4, 17, 5, 13, 6, 19, 8, 9, 10, 18, 12, 22, 14, 15, 16, 21, 20, 23,
0, 1, 2, 4, 3, 12, 5, 8, 6, 9, 7, 10, 11, 20, 13, 16, 14, 17, 15, 18, 19, 21, 22, 23,
@@ -355,11 +355,11 @@ static NetworkDatabase()
3, 4, 5, 7, 10, 12, 11, 13, 16, 18, 19, 20,
4, 6, 8, 10, 9, 12, 11, 14, 13, 15, 17, 19,
5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
- };
- LayerSizes[24] = new[] { 12, 12, 12, 8, 8, 11, 10, 10, 10, 8, 6, 6, 7 };
+ ];
+ LayerSizes[24] = [12, 12, 12, 8, 8, 11, 10, 10, 10, 8, 6, 6, 7];
// Size 25: 130 CEs, 15 layers (Dobbelaere SorterHunter)
- Networks[25] = new[] {
+ Networks[25] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 18, 17, 19, 21, 22, 23, 24,
0, 4, 1, 5, 2, 6, 3, 7, 8, 12, 9, 13, 10, 14, 11, 15, 18, 21, 20, 23, 22, 24,
@@ -375,11 +375,11 @@ static NetworkDatabase()
3, 5, 4, 6, 7, 8, 9, 11, 10, 12, 13, 14, 15, 16, 17, 18,
4, 7, 6, 8, 9, 10, 11, 12, 13, 15, 14, 16, 17, 19, 18, 21,
4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21
- };
- LayerSizes[25] = new[] { 12, 12, 11, 12, 6, 6, 7, 6, 9, 8, 9, 7, 8, 8, 9 };
+ ];
+ LayerSizes[25] = [12, 12, 11, 12, 6, 6, 7, 6, 9, 8, 9, 7, 8, 8, 9];
// Size 26: 138 CEs, 15 layers (Dobbelaere SorterHunter)
- Networks[26] = new[] {
+ Networks[26] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 14, 16, 15, 17, 18, 20, 19, 21, 22, 24, 23, 25,
0, 4, 1, 6, 2, 5, 3, 7, 8, 14, 9, 16, 10, 15, 11, 17, 18, 22, 19, 24, 20, 23, 21, 25,
@@ -395,18 +395,18 @@ static NetworkDatabase()
3, 4, 5, 8, 6, 7, 9, 11, 10, 12, 13, 15, 14, 16, 17, 20, 18, 19, 21, 22,
5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21
- };
- LayerSizes[26] = new[] { 13, 12, 12, 10, 6, 10, 6, 8, 8, 8, 8, 10, 10, 8, 9 };
+ ];
+ LayerSizes[26] = [13, 12, 12, 10, 6, 10, 6, 8, 8, 8, 8, 10, 10, 8, 9];
// Note: sizes 27-28 are from arXiv:2511.04107
// Size 27: depth-13 network from arXiv:2511.04107 (already in the repo)
// Derived from Network28 by filtering pairs where both indices < 27
Networks[27] = DeriveNetwork27FromNetwork28();
- LayerSizes[27] = new[] { 13, 13, 13, 13, 13, 13, 11, 10, 10, 10, 12, 12, 11 };
+ LayerSizes[27] = [13, 13, 13, 13, 13, 13, 11, 10, 10, 10, 12, 12, 11];
// Size 28: depth-13 network from arXiv:2511.04107
- Networks[28] = new[] {
+ Networks[28] = [
0,27, 1,26, 2,25, 3,24, 4,23, 5,22, 6,21, 7,20, 8,9, 10,11, 12,15, 13,14, 16,17, 18,19,
0,1, 2,3, 4,5, 6,7, 8,10, 9,11, 12,14, 13,15, 16,18, 17,19, 20,21, 22,23, 24,25, 26,27,
0,2, 1,3, 4,6, 5,7, 8,19, 9,12, 10,14, 11,16, 13,17, 15,18, 20,22, 21,23, 24,26, 25,27,
@@ -420,11 +420,11 @@ static NetworkDatabase()
1,3, 4,7, 5,6, 8,9, 10,12, 11,16, 13,14, 15,17, 18,19, 20,23, 21,22, 24,26,
2,3, 4,5, 6,7, 8,10, 9,12, 11,13, 14,16, 15,18, 17,19, 20,21, 22,23, 24,25,
3,4, 5,6, 7,8, 9,10, 11,12, 13,14, 15,16, 17,18, 19,20, 21,22, 23,24
- };
- LayerSizes[28] = new[] { 14, 14, 14, 14, 13, 14, 11, 10, 10, 10, 12, 12, 11 };
+ ];
+ LayerSizes[28] = [14, 14, 14, 14, 13, 14, 11, 10, 10, 10, 12, 12, 11];
// Size 29: 164 CEs, 15 layers (Dobbelaere SorterHunter)
- Networks[29] = new[] {
+ Networks[29] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 28, 17, 26, 18, 25, 19, 23, 21, 27, 22, 24,
0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 17, 22, 18, 19, 20, 27, 23, 25, 24, 26,
0, 4, 1, 5, 2, 6, 3, 7, 8, 12, 9, 13, 10, 14, 11, 15, 16, 20, 17, 18, 19, 22, 23, 24, 25, 26, 27, 28,
@@ -440,11 +440,11 @@ static NetworkDatabase()
5, 8, 6, 7, 9, 12, 10, 11, 13, 14, 15, 16, 17, 20, 18, 19, 21, 23, 24, 25,
5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 14, 16, 17, 18, 19, 20, 21, 22,
4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23
- };
- LayerSizes[29] = new[] { 14, 13, 14, 13, 13, 10, 11, 11, 11, 8, 8, 9, 10, 9, 10 };
+ ];
+ LayerSizes[29] = [14, 13, 14, 13, 13, 10, 11, 11, 11, 8, 8, 9, 10, 9, 10];
// Size 30: 172 CEs, 14 layers (Dobbelaere SorterHunter)
- Networks[30] = new[] {
+ Networks[30] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 13, 15, 14, 16, 18, 20, 19, 21, 22, 24, 23, 25, 26, 28, 27, 29,
0, 4, 1, 5, 2, 6, 3, 7, 8, 14, 9, 17, 10, 16, 12, 20, 13, 19, 15, 21, 22, 26, 23, 27, 24, 28, 25, 29,
@@ -459,11 +459,11 @@ static NetworkDatabase()
1, 2, 3, 10, 5, 12, 7, 14, 9, 16, 11, 18, 13, 20, 15, 22, 17, 24, 19, 26, 27, 28,
2, 4, 3, 6, 5, 8, 7, 10, 9, 12, 11, 14, 13, 16, 15, 18, 17, 20, 19, 22, 21, 24, 23, 26, 25, 27,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26
- };
- LayerSizes[30] = new[] { 15, 14, 14, 14, 14, 14, 12, 10, 8, 10, 11, 11, 13, 12 };
+ ];
+ LayerSizes[30] = [15, 14, 14, 14, 14, 14, 12, 10, 8, 10, 11, 11, 13, 12];
// Size 31: 180 CEs, 14 layers (Dobbelaere SorterHunter, derived from 32-input network)
- Networks[31] = new[] {
+ Networks[31] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 18, 17, 19, 20, 22, 21, 23, 24, 26, 25, 27, 28, 30,
0, 4, 1, 5, 2, 6, 3, 7, 8, 12, 9, 13, 10, 14, 11, 15, 16, 20, 17, 21, 18, 22, 19, 23, 24, 28, 25, 29, 26, 30,
@@ -478,11 +478,11 @@ static NetworkDatabase()
5, 6, 8, 12, 9, 10, 11, 13, 14, 16, 15, 17, 18, 20, 19, 23, 21, 22, 25, 26,
3, 5, 6, 7, 8, 9, 10, 12, 11, 14, 13, 16, 15, 18, 17, 20, 19, 21, 22, 23, 24, 25, 26, 28,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28
- };
- LayerSizes[31] = new[] { 15, 15, 15, 15, 15, 14, 12, 12, 12, 10, 10, 10, 12, 13 };
+ ];
+ LayerSizes[31] = [15, 15, 15, 15, 15, 14, 12, 12, 12, 10, 10, 10, 12, 13];
// Size 32: 185 CEs, 14 layers (Dobbelaere SorterHunter)
- Networks[32] = new[] {
+ Networks[32] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 18, 17, 19, 20, 22, 21, 23, 24, 26, 25, 27, 28, 30, 29, 31,
0, 4, 1, 5, 2, 6, 3, 7, 8, 12, 9, 13, 10, 14, 11, 15, 16, 20, 17, 21, 18, 22, 19, 23, 24, 28, 25, 29, 26, 30, 27, 31,
@@ -497,15 +497,15 @@ static NetworkDatabase()
5, 6, 8, 12, 9, 10, 11, 13, 14, 16, 15, 17, 18, 20, 19, 23, 21, 22, 25, 26,
3, 5, 6, 7, 8, 9, 10, 12, 11, 14, 13, 16, 15, 18, 17, 20, 19, 21, 22, 23, 24, 25, 26, 28,
3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28
- };
- LayerSizes[32] = new[] { 16, 16, 16, 16, 16, 14, 12, 12, 12, 10, 10, 10, 12, 13 };
+ ];
+ LayerSizes[32] = [16, 16, 16, 16, 16, 14, 12, 12, 12, 10, 10, 10, 12, 13];
// Sizes 33-64: best-known networks from Dobbelaere's SorterHunter
// Source: https://github.com/bertdobbelaere/SorterHunter/tree/main/Networks/Sorters
// Source: https://bertdobbelaere.github.io/sorting_networks_extended.html
// Size 33: 199 CEs, 15 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_33_199_15.json
- Networks[33] = new[] {
+ Networks[33] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 0, 2, 1, 3, 4, 6, 5, 7,
8, 10, 9, 11, 12, 14, 13, 15, 16, 18, 17, 19, 20, 22, 21, 23, 24, 26, 25, 27,
@@ -526,12 +526,12 @@ static NetworkDatabase()
18, 19, 21, 22, 23, 24, 25, 26, 1, 3, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12,
13, 15, 14, 16, 17, 18, 19, 20, 21, 23, 22, 24, 26, 27, 2, 3, 4, 5, 6, 7,
8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25
- };
- LayerSizes[33] = new[] { 16, 16, 16, 16, 16, 15, 12, 11, 11, 10, 11, 13, 11, 13, 12 };
+ ];
+ LayerSizes[33] = [16, 16, 16, 16, 16, 15, 12, 11, 11, 10, 11, 13, 11, 13, 12];
// Size 34: 209 CEs, 17 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_34_209_17.json
- Networks[34] = new[] {
+ Networks[34] = [
0, 33, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 1, 3, 2, 4, 5, 7,
6, 8, 9, 11, 10, 12, 13, 15, 14, 16, 17, 19, 18, 20, 21, 23, 22, 24, 25, 27,
@@ -553,12 +553,12 @@ static NetworkDatabase()
21, 23, 22, 25, 24, 26, 28, 29, 30, 31, 6, 7, 8, 9, 11, 12, 13, 14, 16, 17,
19, 20, 21, 22, 24, 25, 26, 27, 5, 6, 7, 8, 10, 11, 12, 13, 15, 16, 17, 18,
20, 21, 22, 23, 25, 26, 27, 28, 9, 10, 14, 15, 16, 17, 18, 19, 23, 24
- };
- LayerSizes[34] = new[] { 17, 16, 16, 16, 16, 14, 8, 10, 12, 12, 10, 12, 12, 14, 9, 10, 5 };
+ ];
+ LayerSizes[34] = [17, 16, 16, 16, 16, 14, 8, 10, 12, 12, 10, 12, 12, 14, 9, 10, 5];
// Size 35: 220 CEs, 17 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_35_220_17.json
- Networks[35] = new[] {
+ Networks[35] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 0, 2, 1, 3, 4, 6,
5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 18, 17, 19, 20, 22, 21, 23, 24, 26,
@@ -581,12 +581,12 @@ static NetworkDatabase()
17, 18, 20, 21, 22, 23, 24, 26, 25, 27, 28, 29, 30, 31, 5, 6, 7, 10, 9, 11,
12, 13, 14, 16, 15, 17, 18, 19, 20, 22, 21, 23, 24, 25, 26, 27, 29, 30, 7, 8,
9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28
- };
- LayerSizes[35] = new[] { 17, 17, 17, 16, 16, 16, 8, 9, 8, 10, 12, 10, 13, 15, 13, 12, 11 };
+ ];
+ LayerSizes[35] = [17, 17, 17, 16, 16, 16, 8, 9, 8, 10, 12, 10, 13, 15, 13, 12, 11];
// Size 36: 227 CEs, 18 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_36_227_18.json
- Networks[36] = new[] {
+ Networks[36] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 0, 34, 1, 35,
2, 4, 3, 5, 6, 8, 7, 9, 10, 12, 11, 13, 14, 16, 15, 17, 18, 20, 19, 21,
@@ -610,12 +610,12 @@ static NetworkDatabase()
5, 7, 8, 10, 12, 13, 14, 15, 16, 18, 17, 19, 20, 21, 22, 23, 25, 27, 28, 30,
5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 27,
29, 30, 7, 8, 9, 10, 11, 12, 23, 24, 25, 26, 27, 28
- };
- LayerSizes[36] = new[] { 18, 18, 16, 16, 16, 14, 8, 6, 10, 14, 10, 14, 14, 14, 12, 10, 11, 6 };
+ ];
+ LayerSizes[36] = [18, 18, 16, 16, 16, 14, 8, 6, 10, 14, 10, 14, 14, 14, 12, 10, 11, 6];
// Size 37: 240 CEs, 17 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_37_240_17.json
- Networks[37] = new[] {
+ Networks[37] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 35, 33, 36, 0, 2, 1, 3,
4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 18, 17, 19, 20, 22, 21, 23,
@@ -640,12 +640,12 @@ static NetworkDatabase()
26, 28, 27, 30, 29, 32, 31, 33, 5, 6, 7, 10, 9, 12, 11, 13, 14, 16, 15, 18,
17, 20, 19, 21, 22, 24, 23, 26, 25, 28, 27, 29, 30, 32, 7, 8, 9, 10, 11, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32
- };
- LayerSizes[37] = new[] { 18, 18, 18, 18, 17, 16, 10, 8, 9, 11, 14, 14, 13, 15, 15, 13, 13 };
+ ];
+ LayerSizes[37] = [18, 18, 18, 18, 17, 16, 10, 8, 9, 11, 14, 14, 13, 15, 15, 13, 13];
// Size 38: 250 CEs, 17 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_38_250_17.json
- Networks[38] = new[] {
+ Networks[38] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 0, 2,
1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 20, 17, 21, 22, 24,
@@ -671,12 +671,12 @@ static NetworkDatabase()
27, 30, 28, 29, 31, 33, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 6, 7, 8, 9, 10, 11,
12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
- };
- LayerSizes[38] = new[] { 19, 18, 18, 18, 18, 14, 12, 10, 10, 12, 14, 14, 16, 16, 14, 14, 13 };
+ ];
+ LayerSizes[38] = [19, 18, 18, 18, 18, 14, 12, 10, 10, 12, 14, 14, 16, 16, 14, 14, 13];
// Size 39: 259 CEs, 17 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_39_259_17.json
- Networks[39] = new[] {
+ Networks[39] = [
1, 2, 3, 6, 4, 5, 7, 14, 8, 9, 10, 11, 12, 13, 15, 38, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 0, 1,
3, 4, 5, 6, 7, 12, 8, 10, 9, 11, 13, 14, 15, 36, 16, 18, 17, 19, 20, 22,
@@ -703,12 +703,12 @@ static NetworkDatabase()
6, 7, 8, 10, 9, 11, 12, 13, 14, 15, 16, 18, 17, 19, 20, 22, 21, 23, 24, 25,
26, 27, 28, 29, 30, 31, 32, 34, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34
- };
- LayerSizes[39] = new[] { 19, 19, 19, 17, 15, 14, 12, 10, 15, 14, 16, 16, 14, 14, 16, 14, 15 };
+ ];
+ LayerSizes[39] = [19, 19, 19, 17, 15, 14, 12, 10, 15, 14, 16, 16, 14, 14, 16, 14, 15];
// Size 40: 265 CEs, 17 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_40_265_17.json
- Networks[40] = new[] {
+ Networks[40] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 18, 17, 19,
@@ -736,12 +736,12 @@ static NetworkDatabase()
13, 16, 15, 17, 18, 20, 19, 21, 22, 24, 23, 26, 25, 28, 27, 29, 30, 32, 31, 33,
5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34
- };
- LayerSizes[40] = new[] { 20, 20, 20, 18, 16, 14, 12, 10, 16, 14, 16, 16, 14, 14, 16, 14, 15 };
+ ];
+ LayerSizes[40] = [20, 20, 20, 18, 16, 14, 12, 10, 16, 14, 16, 16, 14, 14, 16, 14, 15];
// Size 41: 282 CEs, 18 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_41_282_18.json
- Networks[41] = new[] {
+ Networks[41] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 18, 17, 19,
@@ -771,12 +771,12 @@ static NetworkDatabase()
23, 25, 26, 28, 27, 29, 30, 32, 31, 33, 34, 35, 5, 6, 7, 8, 9, 10, 11, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36
- };
- LayerSizes[41] = new[] { 20, 20, 20, 19, 18, 17, 14, 11, 13, 12, 15, 14, 13, 16, 15, 14, 15, 16 };
+ ];
+ LayerSizes[41] = [20, 20, 20, 19, 18, 17, 14, 11, 13, 12, 15, 14, 13, 16, 15, 14, 15, 16];
// Size 42: 291 CEs, 18 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_42_291_18.json
- Networks[42] = new[] {
+ Networks[42] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 41, 0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 24,
@@ -807,12 +807,12 @@ static NetworkDatabase()
18, 20, 21, 23, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 8, 9, 10, 11,
12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
32, 33
- };
- LayerSizes[42] = new[] { 21, 20, 21, 20, 20, 19, 14, 14, 17, 12, 16, 10, 14, 16, 14, 16, 14, 13 };
+ ];
+ LayerSizes[42] = [21, 20, 21, 20, 20, 19, 14, 14, 17, 12, 16, 10, 14, 16, 14, 16, 14, 13];
// Size 43: 303 CEs, 19 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_43_303_19.json
- Networks[43] = new[] {
+ Networks[43] = [
1, 2, 3, 6, 4, 5, 7, 14, 8, 9, 10, 11, 12, 13, 15, 42, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 41, 0, 1, 3, 4, 5, 6, 7, 12, 8, 10, 9, 11, 13, 14, 15, 40, 16, 18,
@@ -844,12 +844,12 @@ static NetworkDatabase()
20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 29, 31, 32, 34, 33, 35, 7, 8, 9, 10,
11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36
- };
- LayerSizes[43] = new[] { 21, 21, 19, 21, 20, 19, 12, 11, 16, 16, 18, 14, 14, 14, 12, 12, 14, 14, 15 };
+ ];
+ LayerSizes[43] = [21, 21, 19, 21, 20, 19, 12, 11, 16, 16, 18, 14, 14, 14, 12, 12, 14, 14, 15];
// Size 44: 309 CEs, 19 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_44_309_19.json
- Networks[44] = new[] {
+ Networks[44] = [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 41, 42, 43, 0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15,
@@ -881,12 +881,12 @@ static NetworkDatabase()
7, 9, 10, 12, 11, 13, 14, 16, 15, 18, 17, 20, 19, 22, 21, 24, 23, 26, 25, 28,
27, 29, 30, 32, 31, 33, 34, 36, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36
- };
- LayerSizes[44] = new[] { 22, 22, 20, 22, 20, 20, 12, 12, 16, 16, 18, 14, 14, 14, 12, 12, 14, 14, 15 };
+ ];
+ LayerSizes[44] = [22, 22, 20, 22, 20, 20, 12, 12, 16, 16, 18, 14, 14, 14, 12, 12, 14, 14, 15];
// Size 45: 324 CEs, 19 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_45_324_19.json
- Networks[45] = new[] {
+ Networks[45] = [
3, 12, 4, 8, 5, 6, 7, 11, 9, 10, 13, 32, 14, 35, 15, 18, 16, 29, 17, 28,
19, 30, 20, 24, 21, 22, 23, 27, 25, 26, 31, 34, 33, 44, 36, 40, 37, 38, 39, 43,
41, 42, 0, 5, 1, 7, 2, 9, 3, 4, 8, 12, 10, 11, 13, 37, 14, 36, 15, 25,
@@ -920,12 +920,12 @@ static NetworkDatabase()
26, 27, 28, 29, 30, 31, 32, 33, 34, 36, 35, 38, 37, 40, 7, 8, 9, 10, 11, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40
- };
- LayerSizes[45] = new[] { 21, 22, 21, 22, 22, 19, 15, 12, 17, 13, 17, 16, 16, 14, 14, 14, 16, 16, 17 };
+ ];
+ LayerSizes[45] = [21, 22, 21, 22, 22, 19, 15, 12, 17, 13, 17, 16, 16, 14, 14, 14, 16, 16, 17];
// Size 46: 332 CEs, 19 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_46_332_19.json
- Networks[46] = new[] {
+ Networks[46] = [
2, 13, 3, 12, 4, 8, 5, 6, 7, 11, 9, 10, 14, 35, 15, 18, 16, 29, 17, 28,
19, 30, 20, 24, 21, 22, 23, 27, 25, 26, 31, 34, 32, 45, 33, 44, 36, 40, 37, 38,
39, 43, 41, 42, 0, 5, 1, 7, 2, 9, 3, 4, 8, 12, 10, 13, 14, 36, 15, 25,
@@ -960,12 +960,12 @@ static NetworkDatabase()
29, 32, 31, 34, 33, 35, 36, 37, 38, 39, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40
- };
- LayerSizes[46] = new[] { 22, 22, 23, 22, 22, 20, 15, 13, 18, 14, 18, 16, 16, 14, 14, 14, 16, 16, 17 };
+ ];
+ LayerSizes[46] = [22, 22, 23, 22, 22, 20, 15, 13, 18, 14, 18, 16, 16, 14, 14, 14, 16, 16, 17];
// Size 47: 340 CEs, 19 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_47_340_19.json
- Networks[47] = new[] {
+ Networks[47] = [
1, 12, 2, 13, 3, 14, 4, 8, 5, 6, 7, 11, 9, 10, 15, 18, 16, 29, 17, 28,
19, 30, 20, 24, 21, 22, 23, 27, 25, 26, 31, 34, 32, 45, 33, 44, 35, 46, 36, 40,
37, 38, 39, 43, 41, 42, 0, 5, 1, 7, 2, 9, 3, 4, 8, 14, 10, 13, 11, 12,
@@ -1000,12 +1000,12 @@ static NetworkDatabase()
13, 15, 16, 18, 17, 20, 19, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 40, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
- };
- LayerSizes[47] = new[] { 23, 23, 23, 23, 23, 21, 15, 14, 18, 16, 18, 16, 16, 14, 14, 14, 16, 16, 17 };
+ ];
+ LayerSizes[47] = [23, 23, 23, 23, 23, 21, 15, 14, 18, 16, 18, 16, 16, 14, 14, 14, 16, 16, 17];
// Size 48: 346 CEs, 19 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_48_346_19.json
- Networks[48] = new[] {
+ Networks[48] = [
0, 13, 1, 12, 2, 15, 3, 14, 4, 8, 5, 6, 7, 11, 9, 10, 16, 29, 17, 28,
18, 31, 19, 30, 20, 24, 21, 22, 23, 27, 25, 26, 32, 45, 33, 44, 34, 47, 35, 46,
36, 40, 37, 38, 39, 43, 41, 42, 0, 5, 1, 7, 2, 9, 3, 4, 6, 13, 8, 14,
@@ -1041,12 +1041,12 @@ static NetworkDatabase()
21, 24, 23, 26, 25, 27, 28, 29, 30, 32, 31, 34, 33, 36, 35, 37, 38, 40, 7, 8,
9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
- };
- LayerSizes[48] = new[] { 24, 24, 24, 24, 23, 22, 16, 14, 18, 16, 18, 16, 16, 14, 14, 14, 16, 16, 17 };
+ ];
+ LayerSizes[48] = [24, 24, 24, 24, 23, 22, 16, 14, 18, 16, 18, 16, 16, 14, 14, 14, 16, 16, 17];
// Size 49: 365 CEs, 21 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_49_365_21.json
- Networks[49] = new[] {
+ Networks[49] = [
0, 8, 1, 7, 2, 6, 3, 11, 4, 10, 5, 9, 12, 20, 13, 19, 14, 18, 15, 23,
16, 22, 17, 21, 24, 32, 25, 31, 26, 30, 27, 35, 28, 34, 29, 33, 36, 48, 37, 46,
38, 45, 39, 43, 41, 47, 42, 44, 0, 1, 2, 5, 3, 4, 6, 9, 7, 8, 10, 11,
@@ -1084,12 +1084,12 @@ static NetworkDatabase()
25, 28, 27, 29, 30, 32, 33, 34, 35, 36, 37, 38, 39, 41, 42, 44, 3, 4, 5, 6,
7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
27, 28, 29, 30, 31, 32, 39, 40, 43, 44
- };
- LayerSizes[49] = new[] { 24, 23, 18, 22, 19, 17, 20, 17, 18, 15, 14, 15, 17, 16, 16, 13, 14, 16, 15, 19, 17 };
+ ];
+ LayerSizes[49] = [24, 23, 18, 22, 19, 17, 20, 17, 18, 15, 14, 15, 17, 16, 16, 13, 14, 16, 15, 19, 17];
// Size 50: 376 CEs, 21 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_50_376_21.json
- Networks[50] = new[] {
+ Networks[50] = [
0, 8, 1, 7, 2, 6, 3, 11, 4, 10, 5, 9, 12, 24, 13, 22, 14, 21, 15, 19,
17, 23, 18, 20, 25, 33, 26, 32, 27, 31, 28, 36, 29, 35, 30, 34, 37, 49, 38, 47,
39, 46, 40, 44, 42, 48, 43, 45, 0, 1, 2, 5, 3, 4, 6, 9, 7, 8, 10, 11,
@@ -1128,12 +1128,12 @@ static NetworkDatabase()
32, 33, 34, 35, 36, 37, 38, 39, 41, 42, 44, 45, 46, 47, 3, 4, 7, 8, 11, 12,
13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 43, 44, 47, 48
- };
- LayerSizes[50] = new[] { 24, 22, 20, 20, 19, 18, 19, 17, 19, 19, 16, 17, 18, 16, 16, 11, 16, 12, 17, 21, 19 };
+ ];
+ LayerSizes[50] = [24, 22, 20, 20, 19, 18, 19, 17, 19, 19, 16, 17, 18, 16, 16, 11, 16, 12, 17, 21, 19];
// Size 51: 387 CEs, 22 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_51_387_22.json
- Networks[51] = new[] {
+ Networks[51] = [
0, 8, 1, 7, 2, 6, 3, 11, 4, 10, 5, 9, 12, 24, 13, 22, 14, 21, 15, 19,
17, 23, 18, 20, 25, 37, 26, 35, 27, 34, 28, 32, 30, 36, 31, 33, 38, 50, 39, 48,
40, 47, 41, 45, 43, 49, 44, 46, 0, 1, 2, 5, 3, 4, 6, 9, 7, 8, 10, 11,
@@ -1173,12 +1173,12 @@ static NetworkDatabase()
40, 41, 42, 43, 3, 4, 5, 6, 7, 9, 10, 12, 11, 13, 14, 16, 17, 18, 19, 21,
22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 36, 37, 38, 39, 41, 42, 43, 44,
7, 8, 11, 12, 15, 16, 19, 20, 23, 24, 35, 36, 39, 40
- };
- LayerSizes[51] = new[] { 24, 21, 22, 18, 20, 19, 19, 19, 20, 18, 20, 18, 17, 17, 16, 11, 12, 14, 21, 16, 18, 7 };
+ ];
+ LayerSizes[51] = [24, 21, 22, 18, 20, 19, 19, 19, 20, 18, 20, 18, 17, 17, 16, 11, 12, 14, 21, 16, 18, 7];
// Size 52: 395 CEs, 20 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_52_395_20.json
- Networks[52] = new[] {
+ Networks[52] = [
0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 18, 17, 19,
20, 22, 21, 23, 24, 26, 25, 27, 28, 30, 29, 31, 32, 34, 33, 35, 36, 38, 37, 39,
40, 42, 41, 43, 44, 46, 45, 47, 48, 50, 49, 51, 0, 1, 2, 3, 4, 5, 6, 7,
@@ -1219,12 +1219,12 @@ static NetworkDatabase()
43, 45, 46, 48, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 41, 42, 43, 44, 45, 46, 47, 48
- };
- LayerSizes[52] = new[] { 26, 26, 25, 22, 22, 20, 18, 20, 18, 16, 18, 17, 16, 16, 16, 16, 18, 20, 22, 23 };
+ ];
+ LayerSizes[52] = [26, 26, 25, 22, 22, 20, 18, 20, 18, 16, 18, 17, 16, 16, 16, 16, 18, 20, 22, 23];
// Size 53: 411 CEs, 22 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_53_411_22.json
- Networks[53] = new[] {
+ Networks[53] = [
0, 12, 1, 10, 2, 9, 3, 7, 5, 11, 6, 8, 13, 25, 14, 23, 15, 22, 16, 20,
18, 24, 19, 21, 26, 38, 27, 36, 28, 35, 29, 33, 31, 37, 32, 34, 39, 45, 40, 50,
41, 51, 42, 49, 43, 44, 46, 52, 47, 48, 1, 6, 2, 3, 4, 11, 7, 9, 8, 10,
@@ -1267,12 +1267,12 @@ static NetworkDatabase()
42, 44, 45, 46, 47, 48, 3, 4, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 39, 40,
43, 44
- };
- LayerSizes[53] = new[] { 25, 21, 24, 18, 20, 20, 21, 20, 21, 21, 16, 16, 16, 16, 19, 16, 14, 16, 15, 17, 21, 18 };
+ ];
+ LayerSizes[53] = [25, 21, 24, 18, 20, 20, 21, 20, 21, 21, 16, 16, 16, 16, 19, 16, 14, 16, 15, 17, 21, 18];
// Size 54: 421 CEs, 20 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_54_421_20.json
- Networks[54] = new[] {
+ Networks[54] = [
0, 13, 1, 12, 2, 15, 3, 14, 4, 8, 5, 6, 7, 11, 9, 10, 16, 35, 17, 34,
18, 37, 19, 36, 20, 30, 21, 22, 23, 33, 24, 29, 25, 27, 26, 28, 31, 32, 38, 51,
39, 50, 40, 53, 41, 52, 42, 46, 43, 44, 45, 49, 47, 48, 0, 5, 1, 7, 2, 9,
@@ -1316,12 +1316,12 @@ static NetworkDatabase()
7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
47, 48
- };
- LayerSizes[54] = new[] { 27, 26, 26, 27, 27, 22, 16, 18, 19, 20, 16, 20, 22, 16, 14, 18, 22, 22, 21, 22 };
+ ];
+ LayerSizes[54] = [27, 26, 26, 27, 27, 22, 16, 18, 19, 20, 16, 20, 22, 16, 14, 18, 22, 22, 21, 22];
// Size 55: 432 CEs, 20 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_55_432_20.json
- Networks[55] = new[] {
+ Networks[55] = [
1, 12, 2, 13, 3, 14, 4, 8, 5, 6, 7, 11, 9, 10, 15, 18, 16, 37, 17, 36,
19, 38, 20, 32, 21, 22, 23, 35, 24, 26, 25, 27, 28, 30, 29, 31, 33, 34, 39, 42,
40, 53, 41, 52, 43, 54, 44, 48, 45, 46, 47, 51, 49, 50, 0, 5, 1, 7, 2, 9,
@@ -1366,12 +1366,12 @@ static NetworkDatabase()
7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
47, 48, 49, 50
- };
- LayerSizes[55] = new[] { 27, 27, 27, 25, 26, 24, 18, 20, 21, 20, 16, 18, 20, 18, 18, 18, 22, 22, 22, 23 };
+ ];
+ LayerSizes[55] = [27, 27, 27, 25, 26, 24, 18, 20, 21, 20, 16, 18, 20, 18, 18, 18, 22, 22, 22, 23];
// Size 56: 438 CEs, 20 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_56_438_20.json
- Networks[56] = new[] {
+ Networks[56] = [
0, 13, 1, 12, 2, 15, 3, 14, 4, 8, 5, 6, 7, 11, 9, 10, 16, 37, 17, 36,
18, 39, 19, 38, 20, 32, 21, 22, 23, 35, 24, 26, 25, 27, 28, 30, 29, 31, 33, 34,
40, 53, 41, 52, 42, 55, 43, 54, 44, 48, 45, 46, 47, 51, 49, 50, 0, 5, 1, 7,
@@ -1416,12 +1416,12 @@ static NetworkDatabase()
39, 41, 42, 44, 43, 45, 46, 48, 47, 49, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
- };
- LayerSizes[56] = new[] { 28, 28, 28, 26, 27, 25, 18, 20, 21, 20, 16, 18, 20, 18, 18, 18, 22, 22, 22, 23 };
+ ];
+ LayerSizes[56] = [28, 28, 28, 26, 27, 25, 18, 20, 21, 20, 16, 18, 20, 18, 18, 18, 22, 22, 22, 23];
// Size 57: 454 CEs, 21 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_57_454_21.json
- Networks[57] = new[] {
+ Networks[57] = [
0, 8, 1, 7, 2, 6, 3, 11, 4, 10, 5, 9, 12, 24, 13, 22, 14, 21, 15, 19,
17, 23, 18, 20, 25, 38, 26, 37, 27, 40, 28, 39, 29, 33, 30, 31, 32, 36, 34, 35,
41, 54, 42, 53, 43, 56, 44, 55, 45, 49, 46, 47, 48, 52, 50, 51, 0, 1, 2, 5,
@@ -1468,12 +1468,12 @@ static NetworkDatabase()
5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, 52
- };
- LayerSizes[57] = new[] { 28, 27, 26, 26, 24, 21, 20, 19, 19, 18, 18, 18, 19, 20, 17, 18, 20, 22, 25, 24, 25 };
+ ];
+ LayerSizes[57] = [28, 27, 26, 26, 24, 21, 20, 19, 19, 18, 18, 18, 19, 20, 17, 18, 20, 22, 25, 24, 25];
// Size 58: 465 CEs, 21 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_58_465_21.json
- Networks[58] = new[] {
+ Networks[58] = [
0, 8, 1, 9, 2, 7, 3, 5, 4, 6, 10, 23, 11, 22, 12, 25, 13, 24, 14, 18,
15, 16, 17, 21, 19, 20, 26, 39, 27, 38, 28, 41, 29, 40, 30, 34, 31, 32, 33, 37,
35, 36, 42, 55, 43, 54, 44, 57, 45, 56, 46, 50, 47, 48, 49, 53, 51, 52, 0, 2,
@@ -1521,12 +1521,12 @@ static NetworkDatabase()
50, 52, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 48, 51, 52
- };
- LayerSizes[58] = new[] { 29, 28, 28, 27, 27, 23, 17, 20, 21, 22, 19, 21, 20, 20, 13, 17, 16, 24, 25, 24, 24 };
+ ];
+ LayerSizes[58] = [29, 28, 28, 27, 27, 23, 17, 20, 21, 22, 19, 21, 20, 20, 13, 17, 16, 24, 25, 24, 24];
// Size 59: 476 CEs, 21 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_59_476_21.json
- Networks[59] = new[] {
+ Networks[59] = [
0, 9, 1, 6, 2, 4, 3, 7, 5, 8, 11, 24, 12, 23, 13, 26, 14, 25, 15, 19,
16, 17, 18, 22, 20, 21, 27, 40, 28, 39, 29, 42, 30, 41, 31, 35, 32, 33, 34, 38,
36, 37, 43, 56, 44, 55, 45, 58, 46, 57, 47, 51, 48, 49, 50, 54, 52, 53, 0, 1,
@@ -1575,12 +1575,12 @@ static NetworkDatabase()
50, 51, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52
- };
- LayerSizes[59] = new[] { 29, 29, 28, 29, 28, 23, 19, 21, 20, 20, 21, 21, 18, 21, 13, 17, 21, 25, 24, 24, 25 };
+ ];
+ LayerSizes[59] = [29, 29, 28, 29, 28, 23, 19, 21, 20, 20, 21, 21, 18, 21, 13, 17, 21, 25, 24, 24, 25];
// Size 60: 483 CEs, 21 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_60_483_21.json
- Networks[60] = new[] {
+ Networks[60] = [
1, 2, 3, 10, 4, 14, 5, 8, 6, 13, 7, 12, 9, 11, 16, 17, 18, 25, 19, 29,
20, 23, 21, 28, 22, 27, 24, 26, 31, 32, 33, 40, 34, 44, 35, 38, 36, 43, 37, 42,
39, 41, 46, 47, 48, 55, 49, 59, 50, 53, 51, 58, 52, 57, 54, 56, 0, 14, 1, 5,
@@ -1630,12 +1630,12 @@ static NetworkDatabase()
11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
51, 52, 53, 54, 55, 56
- };
- LayerSizes[60] = new[] { 28, 28, 28, 28, 30, 26, 21, 24, 26, 22, 20, 20, 21, 20, 13, 14, 15, 22, 24, 26, 27 };
+ ];
+ LayerSizes[60] = [28, 28, 28, 28, 30, 26, 21, 24, 26, 22, 20, 20, 21, 20, 13, 14, 15, 22, 24, 26, 27];
// Size 61: 497 CEs, 22 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_61_497_22.json
- Networks[61] = new[] {
+ Networks[61] = [
1, 2, 3, 10, 4, 14, 5, 8, 6, 13, 7, 12, 9, 11, 16, 17, 18, 25, 19, 29,
20, 23, 21, 28, 22, 27, 24, 26, 31, 32, 33, 40, 34, 44, 35, 38, 36, 43, 37, 42,
39, 41, 45, 58, 46, 57, 47, 60, 48, 59, 49, 53, 50, 51, 52, 56, 54, 55, 0, 14,
@@ -1686,12 +1686,12 @@ static NetworkDatabase()
40, 42, 41, 43, 45, 46, 47, 49, 50, 52, 54, 56, 3, 4, 7, 8, 11, 12, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 41, 42, 43, 44, 47, 48, 51, 52, 55, 56
- };
- LayerSizes[61] = new[] { 29, 29, 29, 29, 29, 24, 20, 24, 26, 22, 20, 19, 19, 19, 16, 19, 20, 20, 21, 19, 23, 21 };
+ ];
+ LayerSizes[61] = [29, 29, 29, 29, 29, 24, 20, 24, 26, 22, 20, 19, 19, 19, 16, 19, 20, 20, 21, 19, 23, 21];
// Size 62: 506 CEs, 21 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_62_506_21.json
- Networks[62] = new[] {
+ Networks[62] = [
1, 2, 3, 10, 4, 14, 5, 8, 6, 13, 7, 12, 9, 11, 15, 28, 16, 27, 17, 30,
18, 29, 19, 23, 20, 21, 22, 26, 24, 25, 32, 33, 34, 41, 35, 45, 36, 39, 37, 44,
38, 43, 40, 42, 46, 59, 47, 58, 48, 61, 49, 60, 50, 54, 51, 52, 53, 57, 55, 56,
@@ -1743,12 +1743,12 @@ static NetworkDatabase()
3, 4, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56
- };
- LayerSizes[62] = new[] { 30, 30, 30, 30, 29, 24, 20, 24, 26, 23, 20, 19, 23, 20, 17, 19, 23, 23, 24, 26, 26 };
+ ];
+ LayerSizes[62] = [30, 30, 30, 30, 29, 24, 20, 24, 26, 23, 20, 19, 23, 20, 17, 19, 23, 23, 24, 26, 26];
// Size 63: 515 CEs, 21 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_63_515_21.json
- Networks[63] = new[] {
+ Networks[63] = [
1, 2, 3, 10, 4, 14, 5, 8, 6, 13, 7, 12, 9, 11, 15, 28, 16, 27, 17, 30,
18, 29, 19, 23, 20, 21, 22, 26, 24, 25, 31, 44, 32, 43, 33, 46, 34, 45, 35, 39,
36, 37, 38, 42, 40, 41, 47, 60, 48, 59, 49, 62, 50, 61, 51, 55, 52, 53, 54, 58,
@@ -1801,12 +1801,12 @@ static NetworkDatabase()
7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
47, 48, 49, 50, 51, 52, 53, 54, 55, 56
- };
- LayerSizes[63] = new[] { 31, 31, 31, 31, 30, 24, 20, 24, 26, 21, 21, 21, 23, 19, 17, 20, 22, 25, 25, 26, 27 };
+ ];
+ LayerSizes[63] = [31, 31, 31, 31, 30, 24, 20, 24, 26, 21, 21, 21, 23, 19, 17, 20, 22, 25, 25, 26, 27];
// Size 64: 521 CEs, 21 layers
// Source: https://github.com/bertdobbelaere/SorterHunter/blob/main/Networks/Sorters/Sort_64_521_21.json
- Networks[64] = new[] {
+ Networks[64] = [
0, 2, 1, 3, 4, 6, 5, 7, 8, 10, 9, 11, 12, 14, 13, 15, 16, 18, 17, 19,
20, 22, 21, 23, 24, 26, 25, 27, 28, 30, 29, 31, 32, 34, 33, 35, 36, 38, 37, 39,
40, 42, 41, 43, 44, 46, 45, 47, 48, 50, 49, 51, 52, 54, 53, 55, 56, 58, 57, 59,
@@ -1860,8 +1860,8 @@ static NetworkDatabase()
15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 55, 56,
59, 60
- };
- LayerSizes[64] = new[] { 32, 32, 32, 32, 32, 32, 30, 26, 22, 18, 20, 20, 22, 20, 16, 16, 20, 24, 22, 28, 25 };
+ ];
+ LayerSizes[64] = [32, 32, 32, 32, 32, 32, 30, 26, 22, 18, 20, 20, 22, 20, 16, 16, 20, 24, 22, 28, 25];
}
private static int[] DeriveNetwork27FromNetwork28()
diff --git a/SortingNetworks.Generators/ScalarEmitter.cs b/SortingNetworks.Generators/ScalarEmitter.cs
index 707a3a0..ce1259a 100644
--- a/SortingNetworks.Generators/ScalarEmitter.cs
+++ b/SortingNetworks.Generators/ScalarEmitter.cs
@@ -60,13 +60,13 @@ internal static string EmitSortMethod(int size, string typeName, int[] network,
internal static string EmitNetworkDataField(int size, int[] network)
{
var sb = new StringBuilder();
- sb.Append($" private static readonly int[] Network{size} = new int[] {{ ");
+ sb.Append($" private static readonly int[] Network{size} = [");
for (int i = 0; i < network.Length; i++)
{
if (i > 0) sb.Append(", ");
sb.Append(network[i]);
}
- sb.AppendLine(" };");
+ sb.AppendLine("];");
return sb.ToString();
}
diff --git a/SortingNetworks.Tests/SourceGeneratorDriver.cs b/SortingNetworks.Tests/SourceGeneratorDriver.cs
index 1428651..097d69d 100644
--- a/SortingNetworks.Tests/SourceGeneratorDriver.cs
+++ b/SortingNetworks.Tests/SourceGeneratorDriver.cs
@@ -40,7 +40,7 @@ public static CSharpCompilation CreateCompilation(string source, string assembly
return CSharpCompilation.Create(
assemblyName,
- new[] { syntaxTree },
+ [syntaxTree],
references!,
new CSharpCompilationOptions(OutputKind.DynamicallyLinkedLibrary)
.WithNullableContextOptions(NullableContextOptions.Enable)
@@ -97,7 +97,7 @@ public static GeneratorDriverRunResult RunGenerator(CSharpCompilation compilatio
var generator = new SortingNetworkGenerator();
GeneratorDriver driver = CSharpGeneratorDriver.Create(
- generators: new[] { generator.AsSourceGenerator() },
+ generators: [generator.AsSourceGenerator()],
driverOptions: new GeneratorDriverOptions(
disabledOutputs: IncrementalGeneratorOutputKind.None,
trackIncrementalGeneratorSteps: true));
@@ -115,7 +115,7 @@ public static (GeneratorDriverRunResult result, Compilation updatedCompilation)
var generator = new SortingNetworkGenerator();
GeneratorDriver driver = CSharpGeneratorDriver.Create(
- generators: new[] { generator.AsSourceGenerator() },
+ generators: [generator.AsSourceGenerator()],
driverOptions: new GeneratorDriverOptions(
disabledOutputs: IncrementalGeneratorOutputKind.None,
trackIncrementalGeneratorSteps: true));
@@ -134,7 +134,7 @@ public static GeneratorDriverRunResult RunGeneratorTwice(CSharpCompilation first
var generator = new SortingNetworkGenerator();
GeneratorDriver driver = CSharpGeneratorDriver.Create(
- generators: new[] { generator.AsSourceGenerator() },
+ generators: [generator.AsSourceGenerator()],
driverOptions: new GeneratorDriverOptions(
disabledOutputs: IncrementalGeneratorOutputKind.None,
trackIncrementalGeneratorSteps: true));
diff --git a/samples/SortingNetworks.Sample/Program.cs b/samples/SortingNetworks.Sample/Program.cs
index 25143d7..8b2d647 100644
--- a/samples/SortingNetworks.Sample/Program.cs
+++ b/samples/SortingNetworks.Sample/Program.cs
@@ -1,10 +1,10 @@
using SortingNetworks;
-var data = new int[] {
+int[] data = [
27, 26, 25, 24, 23, 22, 21, 20, 19,
18, 17, 16, 15, 14, 13, 12, 11, 10,
9, 8, 7, 6, 5, 4, 3, 2, 1,
-};
+];
MySorter.Sort(data);
var expected = Enumerable.Range(1, 27).ToArray();