;; DESIGNS.LISP -- various block designs (as lists of lists) ;; projective planes (all vectors share only one element) ; gap> D := PGPointFlatBlockDesign(221);; D.blocks; BlockNumbers(D); ; size 7 (define pplane3 '( ( 1 2 3 ) ( 1 4 5 ) ( 1 6 7 ) ( 2 4 6 ) ( 2 5 7 ) ( 3 4 7 ) ( 3 5 6 ) )) ; gap> D := PGPointFlatBlockDesign(231);; D.blocks; BlockNumbers(D); ; size 13 (define pplane4 '( ( 1 2 3 4 ) ( 1 5 6 7 ) ( 1 8 9 10 ) ( 1 11 12 13 ) ( 2 5 8 11 ) ( 2 6 9 12 ) ( 2 7 10 13 ) ( 3 5 9 13 ) ( 3 6 10 11 ) ( 3 7 8 12 ) ( 4 5 10 12 ) ( 4 6 8 13 ) ( 4 7 9 11 ) )) ; gap> D := PGPointFlatBlockDesign(241);; D.blocks; BlockNumbers(D); ; size 21 (define pplane5 '( ( 1 2 3 4 5 ) ( 1 6 7 8 9 ) ( 1 10 11 12 13 ) ( 1 14 15 16 17 ) ( 1 18 19 20 21 ) ( 2 6 10 14 18 ) ( 2 7 11 15 19 ) ( 2 8 12 16 20 ) ( 2 9 13 17 21 ) ( 3 6 11 16 21 ) ( 3 7 10 17 20 ) ( 3 8 13 14 19 ) ( 3 9 12 15 18 ) ( 4 6 12 17 19 ) ( 4 7 13 16 18 ) ( 4 8 10 15 21 ) ( 4 9 11 14 20 ) ( 5 6 13 15 20 ) ( 5 7 12 14 21 ) ( 5 8 11 17 18 ) ( 5 9 10 16 19 ) )) ; gap> D := PGPointFlatBlockDesign(251);; D.blocks; BlockNumbers(D); ; size 31 (define pplane6 '( ( 1 2 3 4 5 6 ) ( 1 7 8 9 10 11 ) ( 1 12 13 14 15 16 ) ( 1 17 18 19 20 21 ) ( 1 22 23 24 25 26 ) ( 1 27 28 29 30 31 ) ( 2 7 12 17 22 27 ) ( 2 8 13 18 23 28 ) ( 2 9 14 19 24 29 ) ( 2 10 15 20 25 30 ) ( 2 11 16 21 26 31 ) ( 3 7 13 19 25 31 ) ( 3 8 14 21 22 30 ) ( 3 9 16 20 23 27 ) ( 3 10 12 18 26 29 ) ( 3 11 15 17 24 28 ) ( 4 7 14 20 26 28 ) ( 4 8 16 17 25 29 ) ( 4 9 15 18 22 31 ) ( 4 10 13 21 24 27 ) ( 4 11 12 19 23 30 ) ( 5 7 15 21 23 29 ) ( 5 8 12 20 24 31 ) ( 5 9 13 17 26 30 ) ( 5 10 16 19 22 28 ) ( 5 11 14 18 25 27 ) ( 6 7 16 18 24 30 ) ( 6 8 15 19 26 27 ) ( 6 9 12 21 25 28 ) ( 6 10 14 17 23 31 ) ( 6 11 13 20 22 29 ) )) ; gap> D := PGPointFlatBlockDesign(271);; D.blocks; BlockNumbers(D); ; size 57 (define pplane8 '( ( 1 2 3 4 5 6 7 8 ) ( 1 9 10 11 12 13 14 15 ) ( 1 16 17 18 19 20 21 22 ) ( 1 23 24 25 26 27 28 29 ) ( 1 30 31 32 33 34 35 36 ) ( 1 37 38 39 40 41 42 43 ) ( 1 44 45 46 47 48 49 50 ) ( 1 51 52 53 54 55 56 57 ) ( 2 9 16 23 30 37 44 51 ) ( 2 10 17 24 31 38 45 52 ) ( 2 11 18 25 32 39 46 53 ) ( 2 12 19 26 33 40 47 54 ) ( 2 13 20 27 34 41 48 55 ) ( 2 14 21 28 35 42 49 56 ) ( 2 15 22 29 36 43 50 57 ) ( 3 9 17 25 33 41 49 57 ) ( 3 10 19 28 32 37 50 55 ) ( 3 11 21 27 36 40 44 52 ) ( 3 12 18 29 35 38 48 51 ) ( 3 13 16 26 31 43 46 56 ) ( 3 14 22 23 34 39 45 54 ) ( 3 15 20 24 30 42 47 53 ) ( 4 9 18 26 34 42 50 52 ) ( 4 10 21 25 30 43 48 54 ) ( 4 11 20 29 33 37 45 56 ) ( 4 12 22 28 31 41 44 53 ) ( 4 13 19 24 36 39 49 51 ) ( 4 14 16 27 32 38 47 57 ) ( 4 15 17 23 35 40 46 55 ) ( 5 9 19 27 35 43 45 53 ) ( 5 10 18 23 36 41 47 56 ) ( 5 11 22 26 30 38 49 55 ) ( 5 12 21 24 34 37 46 57 ) ( 5 13 17 29 32 42 44 54 ) ( 5 14 20 25 31 40 50 51 ) ( 5 15 16 28 33 39 48 52 ) ( 6 9 20 28 36 38 46 54 ) ( 6 10 16 29 34 40 49 53 ) ( 6 11 19 23 31 42 48 57 ) ( 6 12 17 27 30 39 50 56 ) ( 6 13 22 25 35 37 47 52 ) ( 6 14 18 24 33 43 44 55 ) ( 6 15 21 26 32 41 45 51 ) ( 7 9 21 29 31 39 47 55 ) ( 7 10 22 27 33 42 46 51 ) ( 7 11 16 24 35 41 50 54 ) ( 7 12 20 23 32 43 49 52 ) ( 7 13 18 28 30 40 45 57 ) ( 7 14 17 26 36 37 48 53 ) ( 7 15 19 25 34 38 44 56 ) ( 8 9 22 24 32 40 48 56 ) ( 8 10 20 26 35 39 44 57 ) ( 8 11 17 28 34 43 47 51 ) ( 8 12 16 25 36 42 45 55 ) ( 8 13 21 23 33 38 50 53 ) ( 8 14 19 29 30 41 46 52 ) ( 8 15 18 27 31 37 49 54 ) )) ; gap> D := PGPointFlatBlockDesign(281);; D.blocks; BlockNumbers(D); ; size 73 (define pplane9 '( ( 1 2 3 4 5 6 7 8 9 ) ( 1 10 11 12 13 14 15 16 17 ) ( 1 18 19 20 21 22 23 24 25 ) ( 1 26 27 28 29 30 31 32 33 ) ( 1 34 35 36 37 38 39 40 41 ) ( 1 42 43 44 45 46 47 48 49 ) ( 1 50 51 52 53 54 55 56 57 ) ( 1 58 59 60 61 62 63 64 65 ) ( 1 66 67 68 69 70 71 72 73 ) ( 2 10 18 26 34 42 50 58 66 ) ( 2 11 19 27 35 43 51 59 67 ) ( 2 12 20 28 36 44 52 60 68 ) ( 2 13 21 29 37 45 53 61 69 ) ( 2 14 22 30 38 46 54 62 70 ) ( 2 15 23 31 39 47 55 63 71 ) ( 2 16 24 32 40 48 56 64 72 ) ( 2 17 25 33 41 49 57 65 73 ) ( 3 10 19 28 37 46 55 64 73 ) ( 3 11 18 30 41 44 56 63 69 ) ( 3 12 22 26 39 43 53 65 72 ) ( 3 13 25 31 34 48 52 62 67 ) ( 3 14 20 27 40 42 57 61 71 ) ( 3 15 24 29 36 49 50 59 70 ) ( 3 16 23 33 38 45 51 58 68 ) ( 3 17 21 32 35 47 54 60 66 ) ( 4 10 20 29 38 47 56 65 67 ) ( 4 11 22 33 36 48 55 61 66 ) ( 4 12 18 31 35 45 57 64 70 ) ( 4 13 23 26 40 44 54 59 73 ) ( 4 14 19 32 34 49 53 63 68 ) ( 4 15 21 28 41 42 51 62 72 ) ( 4 16 25 30 37 43 50 60 71 ) ( 4 17 24 27 39 46 52 58 69 ) ( 5 10 21 30 39 48 57 59 68 ) ( 5 11 25 28 40 47 53 58 70 ) ( 5 12 23 27 37 49 56 62 66 ) ( 5 13 18 32 36 46 51 65 71 ) ( 5 14 24 26 41 45 55 60 67 ) ( 5 15 20 33 34 43 54 64 69 ) ( 5 16 22 29 35 42 52 63 73 ) ( 5 17 19 31 38 44 50 61 72 ) ( 6 10 22 31 40 49 51 60 69 ) ( 6 11 20 32 39 45 50 62 73 ) ( 6 12 19 29 41 48 54 58 71 ) ( 6 13 24 28 38 43 57 63 66 ) ( 6 14 18 33 37 47 52 59 72 ) ( 6 15 25 26 35 46 56 61 68 ) ( 6 16 21 27 34 44 55 65 70 ) ( 6 17 23 30 36 42 53 64 67 ) ( 7 10 23 32 41 43 52 61 70 ) ( 7 11 24 31 37 42 54 65 68 ) ( 7 12 21 33 40 46 50 63 67 ) ( 7 13 20 30 35 49 55 58 72 ) ( 7 14 25 29 39 44 51 64 66 ) ( 7 15 18 27 38 48 53 60 73 ) ( 7 16 19 26 36 47 57 62 69 ) ( 7 17 22 28 34 45 56 59 71 ) ( 8 10 24 33 35 44 53 62 71 ) ( 8 11 23 29 34 46 57 60 72 ) ( 8 12 25 32 38 42 55 59 69 ) ( 8 13 22 27 41 47 50 64 68 ) ( 8 14 21 31 36 43 56 58 73 ) ( 8 15 19 30 40 45 52 65 66 ) ( 8 16 18 28 39 49 54 61 67 ) ( 8 17 20 26 37 48 51 63 70 ) ( 9 10 25 27 36 45 54 63 72 ) ( 9 11 21 26 38 49 52 64 71 ) ( 9 12 24 30 34 47 51 61 73 ) ( 9 13 19 33 39 42 56 60 70 ) ( 9 14 23 28 35 48 50 65 69 ) ( 9 15 22 32 37 44 57 58 67 ) ( 9 16 20 31 41 46 53 59 66 ) ( 9 17 18 29 40 43 55 62 68 ) )) ; gap> D := PGPointFlatBlockDesign(291);; D.blocks; BlockNumbers(D); ; size 91 (define pplane10 '( ( 1 2 3 4 5 6 7 8 9 10 ) ( 1 11 12 13 14 15 16 17 18 19 ) ( 1 20 21 22 23 24 25 26 27 28 ) ( 1 29 30 31 32 33 34 35 36 37 ) ( 1 38 39 40 41 42 43 44 45 46 ) ( 1 47 48 49 50 51 52 53 54 55 ) ( 1 56 57 58 59 60 61 62 63 64 ) ( 1 65 66 67 68 69 70 71 72 73 ) ( 1 74 75 76 77 78 79 80 81 82 ) ( 1 83 84 85 86 87 88 89 90 91 ) ( 2 11 20 29 38 47 56 65 74 83 ) ( 2 12 21 30 39 48 57 66 75 84 ) ( 2 13 22 31 40 49 58 67 76 85 ) ( 2 14 23 32 41 50 59 68 77 86 ) ( 2 15 24 33 42 51 60 69 78 87 ) ( 2 16 25 34 43 52 61 70 79 88 ) ( 2 17 26 35 44 53 62 71 80 89 ) ( 2 18 27 36 45 54 63 72 81 90 ) ( 2 19 28 37 46 55 64 73 82 91 ) ( 3 11 21 31 41 51 61 71 81 91 ) ( 3 12 22 29 42 55 63 70 80 86 ) ( 3 13 20 30 46 50 62 72 79 87 ) ( 3 14 24 37 44 52 57 65 76 90 ) ( 3 15 28 32 43 54 58 66 74 89 ) ( 3 16 27 35 39 49 64 69 77 83 ) ( 3 17 25 36 38 48 60 68 82 85 ) ( 3 18 26 34 40 47 59 73 78 84 ) ( 3 19 23 33 45 53 56 67 75 88 ) ( 4 11 22 30 44 54 64 68 78 88 ) ( 4 12 20 31 43 53 59 69 82 90 ) ( 4 13 21 29 45 52 60 73 77 89 ) ( 4 14 28 33 38 49 63 71 79 84 ) ( 4 15 23 37 39 47 62 70 81 85 ) ( 4 16 26 36 42 50 56 66 76 91 ) ( 4 17 27 34 41 55 58 65 75 87 ) ( 4 18 25 35 46 51 57 67 74 86 ) ( 4 19 24 32 40 48 61 72 80 83 ) ( 5 11 23 35 42 52 58 72 82 84 ) ( 5 12 24 34 46 54 56 71 77 85 ) ( 5 13 28 36 41 53 57 70 78 83 ) ( 5 14 26 29 43 48 64 67 81 87 ) ( 5 15 25 30 45 49 59 65 80 91 ) ( 5 16 21 33 40 55 62 68 74 90 ) ( 5 17 20 32 39 51 63 73 76 88 ) ( 5 18 22 37 38 50 61 69 75 89 ) ( 5 19 27 31 44 47 60 66 79 86 ) ( 6 11 24 36 43 49 62 73 75 86 ) ( 6 12 28 35 45 47 61 68 76 87 ) ( 6 13 23 34 44 48 63 69 74 91 ) ( 6 14 25 31 39 55 56 72 78 89 ) ( 6 15 27 29 40 50 57 71 82 88 ) ( 6 16 22 32 46 53 60 65 81 84 ) ( 6 17 21 37 42 54 59 67 79 83 ) ( 6 18 20 33 41 52 64 66 80 85 ) ( 6 19 26 30 38 51 58 70 77 90 ) ( 7 11 25 37 40 53 63 66 77 87 ) ( 7 12 27 32 38 52 62 67 78 91 ) ( 7 13 26 33 39 54 61 65 82 86 ) ( 7 14 21 36 46 47 58 69 80 88 ) ( 7 15 22 35 41 48 56 73 79 90 ) ( 7 16 28 29 44 51 59 72 75 85 ) ( 7 17 24 31 45 50 64 70 74 84 ) ( 7 18 23 30 43 55 60 71 76 83 ) ( 7 19 20 34 42 49 57 68 81 89 ) ( 8 11 26 32 45 55 57 69 79 85 ) ( 8 12 25 33 44 50 58 73 81 83 ) ( 8 13 27 37 43 51 56 68 80 84 ) ( 8 14 20 35 40 54 60 70 75 91 ) ( 8 15 21 34 38 53 64 72 76 86 ) ( 8 16 24 30 41 47 63 67 82 89 ) ( 8 17 23 29 46 49 61 66 78 90 ) ( 8 18 28 31 42 48 62 65 77 88 ) ( 8 19 22 36 39 52 59 71 74 87 ) ( 9 11 27 33 46 48 59 70 76 89 ) ( 9 12 26 37 41 49 60 72 74 88 ) ( 9 13 25 32 42 47 64 71 75 90 ) ( 9 14 22 34 45 51 62 66 82 83 ) ( 9 15 20 36 44 55 61 67 77 84 ) ( 9 16 23 31 38 54 57 73 80 87 ) ( 9 17 28 30 40 52 56 69 81 86 ) ( 9 18 24 29 39 53 58 68 79 91 ) ( 9 19 21 35 43 50 63 65 78 85 ) ( 10 11 28 34 39 50 60 67 80 90 ) ( 10 12 23 36 40 51 64 65 79 89 ) ( 10 13 24 35 38 55 59 66 81 88 ) ( 10 14 27 30 42 53 61 73 74 85 ) ( 10 15 26 31 46 52 63 68 75 83 ) ( 10 16 20 37 45 48 58 71 78 86 ) ( 10 17 22 33 43 47 57 72 77 91 ) ( 10 18 21 32 44 49 56 70 82 87 ) ( 10 19 25 29 41 54 62 69 76 84 ) )) ; gap> D := PGPointFlatBlockDesign(2111);; D.blocks; BlockNumbers(D); ; size 133 (define pplane12 '( ( 1 2 3 4 5 6 7 8 9 10 11 12 ) ( 1 13 14 15 16 17 18 19 20 21 22 23 ) ( 1 24 25 26 27 28 29 30 31 32 33 34 ) ( 1 35 36 37 38 39 40 41 42 43 44 45 ) ( 1 46 47 48 49 50 51 52 53 54 55 56 ) ( 1 57 58 59 60 61 62 63 64 65 66 67 ) ( 1 68 69 70 71 72 73 74 75 76 77 78 ) ( 1 79 80 81 82 83 84 85 86 87 88 89 ) ( 1 90 91 92 93 94 95 96 97 98 99 100 ) ( 1 101 102 103 104 105 106 107 108 109 110 111 ) ( 1 112 113 114 115 116 117 118 119 120 121 122 ) ( 1 123 124 125 126 127 128 129 130 131 132 133 ) ( 2 13 24 35 46 57 68 79 90 101 112 123 ) ( 2 14 25 36 47 58 69 80 91 102 113 124 ) ( 2 15 26 37 48 59 70 81 92 103 114 125 ) ( 2 16 27 38 49 60 71 82 93 104 115 126 ) ( 2 17 28 39 50 61 72 83 94 105 116 127 ) ( 2 18 29 40 51 62 73 84 95 106 117 128 ) ( 2 19 30 41 52 63 74 85 96 107 118 129 ) ( 2 20 31 42 53 64 75 86 97 108 119 130 ) ( 2 21 32 43 54 65 76 87 98 109 120 131 ) ( 2 22 33 44 55 66 77 88 99 110 121 132 ) ( 2 23 34 45 56 67 78 89 100 111 122 133 ) ( 3 13 25 37 49 61 73 85 97 109 121 133 ) ( 3 14 26 44 51 64 78 79 96 105 115 131 ) ( 3 15 33 38 56 63 76 80 90 108 117 127 ) ( 3 16 29 45 50 58 75 88 92 101 120 129 ) ( 3 17 31 41 47 62 70 87 100 104 112 132 ) ( 3 18 34 43 53 59 74 82 99 102 116 123 ) ( 3 19 24 36 55 65 71 86 94 111 114 128 ) ( 3 20 30 35 48 67 77 83 98 106 113 126 ) ( 3 21 28 42 46 60 69 89 95 110 118 125 ) ( 3 22 27 40 54 57 72 81 91 107 122 130 ) ( 3 23 32 39 52 66 68 84 93 103 119 124 ) ( 4 13 26 38 50 62 74 86 98 110 122 124 ) ( 4 14 33 40 53 67 68 85 94 104 120 125 ) ( 4 15 27 45 52 65 69 79 97 106 116 132 ) ( 4 16 34 39 47 64 77 81 90 109 118 128 ) ( 4 17 30 36 51 59 76 89 93 101 121 130 ) ( 4 18 32 42 48 63 71 88 91 105 112 133 ) ( 4 19 25 44 54 60 75 83 100 103 117 123 ) ( 4 20 24 37 56 66 72 87 95 102 115 129 ) ( 4 21 31 35 49 58 78 84 99 107 114 127 ) ( 4 22 29 43 46 61 70 80 96 111 119 126 ) ( 4 23 28 41 55 57 73 82 92 108 113 131 ) ( 5 13 27 39 51 63 75 87 99 111 113 125 ) ( 5 14 29 42 56 57 74 83 93 109 114 132 ) ( 5 15 34 41 54 58 68 86 95 105 121 126 ) ( 5 16 28 36 53 66 70 79 98 107 117 133 ) ( 5 17 25 40 48 65 78 82 90 110 119 129 ) ( 5 18 31 37 52 60 77 80 94 101 122 131 ) ( 5 19 33 43 49 64 72 89 92 106 112 124 ) ( 5 20 26 45 55 61 76 84 91 104 118 123 ) ( 5 21 24 38 47 67 73 88 96 103 116 130 ) ( 5 22 32 35 50 59 69 85 100 108 115 128 ) ( 5 23 30 44 46 62 71 81 97 102 120 127 ) ( 6 13 28 40 52 64 76 88 100 102 114 126 ) ( 6 14 31 45 46 63 72 82 98 103 121 128 ) ( 6 15 30 43 47 57 75 84 94 110 115 133 ) ( 6 16 25 42 55 59 68 87 96 106 122 127 ) ( 6 17 29 37 54 67 71 79 99 108 118 124 ) ( 6 18 26 41 49 66 69 83 90 111 120 130 ) ( 6 19 32 38 53 61 78 81 95 101 113 132 ) ( 6 20 34 44 50 65 73 80 93 107 112 125 ) ( 6 21 27 36 56 62 77 85 92 105 119 123 ) ( 6 22 24 39 48 58 74 89 97 104 117 131 ) ( 6 23 33 35 51 60 70 86 91 109 116 129 ) ( 7 13 29 41 53 65 77 89 91 103 115 127 ) ( 7 14 34 35 52 61 71 87 92 110 117 130 ) ( 7 15 32 36 46 64 73 83 99 104 122 129 ) ( 7 16 31 44 48 57 76 85 95 111 116 124 ) ( 7 17 26 43 56 60 68 88 97 107 113 128 ) ( 7 18 30 38 55 58 72 79 100 109 119 125 ) ( 7 19 27 42 50 67 70 84 90 102 121 131 ) ( 7 20 33 39 54 62 69 82 96 101 114 133 ) ( 7 21 25 45 51 66 74 81 94 108 112 126 ) ( 7 22 28 37 47 63 78 86 93 106 120 123 ) ( 7 23 24 40 49 59 75 80 98 105 118 132 ) ( 8 13 30 42 54 66 78 80 92 104 116 128 ) ( 8 14 24 41 50 60 76 81 99 106 119 133 ) ( 8 15 25 35 53 62 72 88 93 111 118 131 ) ( 8 16 33 37 46 65 74 84 100 105 113 130 ) ( 8 17 32 45 49 57 77 86 96 102 117 125 ) ( 8 18 27 44 47 61 68 89 98 108 114 129 ) ( 8 19 31 39 56 59 73 79 91 110 120 126 ) ( 8 20 28 43 51 58 71 85 90 103 122 132 ) ( 8 21 34 40 55 63 70 83 97 101 115 124 ) ( 8 22 26 36 52 67 75 82 95 109 112 127 ) ( 8 23 29 38 48 64 69 87 94 107 121 123 ) ( 9 13 31 43 55 67 69 81 93 105 117 129 ) ( 9 14 30 39 49 65 70 88 95 108 122 123 ) ( 9 15 24 42 51 61 77 82 100 107 120 124 ) ( 9 16 26 35 54 63 73 89 94 102 119 132 ) ( 9 17 34 38 46 66 75 85 91 106 114 131 ) ( 9 18 33 36 50 57 78 87 97 103 118 126 ) ( 9 19 28 45 48 62 68 80 99 109 115 130 ) ( 9 20 32 40 47 60 74 79 92 111 121 127 ) ( 9 21 29 44 52 59 72 86 90 104 113 133 ) ( 9 22 25 41 56 64 71 84 98 101 116 125 ) ( 9 23 27 37 53 58 76 83 96 110 112 128 ) ( 10 13 32 44 56 58 70 82 94 106 118 130 ) ( 10 14 28 38 54 59 77 84 97 111 112 129 ) ( 10 15 31 40 50 66 71 89 96 109 113 123 ) ( 10 16 24 43 52 62 78 83 91 108 121 125 ) ( 10 17 27 35 55 64 74 80 95 103 120 133 ) ( 10 18 25 39 46 67 76 86 92 107 115 132 ) ( 10 19 34 37 51 57 69 88 98 104 119 127 ) ( 10 20 29 36 49 63 68 81 100 110 116 131 ) ( 10 21 33 41 48 61 75 79 93 102 122 128 ) ( 10 22 30 45 53 60 73 87 90 105 114 124 ) ( 10 23 26 42 47 65 72 85 99 101 117 126 ) ( 11 13 33 45 47 59 71 83 95 107 119 131 ) ( 11 14 27 43 48 66 73 86 100 101 118 127 ) ( 11 15 29 39 55 60 78 85 98 102 112 130 ) ( 11 16 32 41 51 67 72 80 97 110 114 123 ) ( 11 17 24 44 53 63 69 84 92 109 122 126 ) ( 11 18 28 35 56 65 75 81 96 104 121 124 ) ( 11 19 26 40 46 58 77 87 93 108 116 133 ) ( 11 20 25 38 52 57 70 89 99 105 120 128 ) ( 11 21 30 37 50 64 68 82 91 111 117 132 ) ( 11 22 34 42 49 62 76 79 94 103 113 129 ) ( 11 23 31 36 54 61 74 88 90 106 115 125 ) ( 12 13 34 36 48 60 72 84 96 108 120 132 ) ( 12 14 32 37 55 62 75 89 90 107 116 126 ) ( 12 15 28 44 49 67 74 87 91 101 119 128 ) ( 12 16 30 40 56 61 69 86 99 103 112 131 ) ( 12 17 33 42 52 58 73 81 98 111 115 123 ) ( 12 18 24 45 54 64 70 85 93 110 113 127 ) ( 12 19 29 35 47 66 76 82 97 105 122 125 ) ( 12 20 27 41 46 59 78 88 94 109 117 124 ) ( 12 21 26 39 53 57 71 80 100 106 121 129 ) ( 12 22 31 38 51 65 68 83 92 102 118 133 ) ( 12 23 25 43 50 63 77 79 95 104 114 130 ) )) ;; AFFINE PLANES ;; any two distinct points are joined by exactly one line ;; any point not in a line is contained in only one other non-intersecting line ; 9 elements ; 12 vectors (define aplane3 '((1 2 3) (1 4 5) (1 6 7) (1 8 9) (2 4 6) (2 5 8) (2 7 9) (3 4 9) (3 5 7) (3 6 8) (4 7 8) (5 6 9))) ; 16 elements ; 20 vectors (define aplane4 '((1 2 3 4) (1 5 6 7) (1 8 9 10) (1 11 12 13) (1 14 15 16) (2 5 11 14) (2 6 8 12) (2 7 9 15) (2 10 13 16) (3 5 8 16) (3 6 13 15) (3 7 10 11) (3 9 12 14) (4 5 9 13) (4 6 10 14) (4 7 12 16) (4 8 11 15) (5 10 12 15) (6 9 11 16) (7 8 13 14))) ;; 25 elements ;; 30 vectors (define aplane5 '((1 2 3 4 5) (1 6 7 8 9) (1 10 11 12 13) (1 14 15 16 17) (1 18 19 20 21) (1 22 23 24 25) (2 6 10 14 22) (2 7 15 18 23) (2 8 11 16 19) (2 9 12 20 24) (2 13 17 21 25) (3 6 16 20 25) (3 7 11 17 24) (3 8 13 18 22) (3 9 10 15 21) (3 12 14 19 23) (4 6 11 21 23) (4 7 13 14 20) (4 8 12 15 25) (4 9 17 19 22) (4 10 16 18 24) (5 6 12 17 18) (5 7 10 19 25) (5 8 14 21 24) (5 9 13 16 23) (5 11 15 20 22) (6 13 15 19 24) (7 12 16 21 22) (8 10 17 20 23) (9 11 14 18 25))) ;; STEINER TRIPLE SYSTEMS ; 7 elements ; 7 vectors (define sts7 '( ( 1 2 3 ) ( 1 4 5 ) ( 1 6 7 ) ( 2 4 6 ) ( 2 5 7 ) ( 3 4 7 ) ( 3 5 6 ) )) ; 9 elements ; 9 vectors (define sts9 '( ( 1 2 3 ) ( 1 4 5 ) ( 1 6 7 ) ( 1 8 9 ) ( 2 4 6 ) ( 2 5 8 ) ( 2 7 9 ) ( 3 4 9 ) ( 3 5 7 ) ( 3 6 8 ) ( 4 7 8 ) ( 5 6 9 ) )) ;; STEINER QUADRUPLE SYSTEMS ; 8 elements ; 14 vectors (define sqs8 '( ( 1 2 3 4 ) ( 1 2 5 6 ) ( 1 2 7 8 ) ( 1 3 5 7 ) ( 1 3 6 8 ) ( 1 4 5 8 ) ( 1 4 6 7 ) ( 2 3 5 8 ) ( 2 3 6 7 ) ( 2 4 5 7 ) ( 2 4 6 8 ) ( 3 4 5 6 ) ( 3 4 7 8 ) ( 5 6 7 8 ) )) ;; some other designs, Hadamard etc. ; S(3 4 10) ; size 30 (define s-3-4-10 '( ( 1 2 3 4 ) ( 1 2 5 6 ) ( 1 2 7 8 ) ( 1 2 9 10 ) ( 1 3 5 7 ) ( 1 3 6 9 ) ( 1 3 8 10 ) ( 1 4 5 10 ) ( 1 4 6 8 ) ( 1 4 7 9 ) ( 1 5 8 9 ) ( 1 6 7 10 ) ( 2 3 5 8 ) ( 2 3 6 10 ) ( 2 3 7 9 ) ( 2 4 5 9 ) ( 2 4 6 7 ) ( 2 4 8 10 ) ( 2 5 7 10 ) ( 2 6 8 9 ) ( 3 4 5 6 ) ( 3 4 7 10 ) ( 3 4 8 9 ) ( 3 5 9 10 ) ( 3 6 7 8 ) ( 4 5 7 8 ) ( 4 6 9 10 ) ( 5 6 7 9 ) ( 5 6 8 10 ) ( 7 8 9 10 ) )) ; S(3 3 9) ; size 84 (define s-3-3-9 ' ( ( 1 2 3 ) ( 1 2 4 ) ( 1 2 5 ) ( 1 2 6 ) ( 1 2 7 ) ( 1 2 8 ) ( 1 2 9 ) ( 1 3 4 ) ( 1 3 5 ) ( 1 3 6 ) ( 1 3 7 ) ( 1 3 8 ) ( 1 3 9 ) ( 1 4 5 ) ( 1 4 6 ) ( 1 4 7 ) ( 1 4 8 ) ( 1 4 9 ) ( 1 5 6 ) ( 1 5 7 ) ( 1 5 8 ) ( 1 5 9 ) ( 1 6 7 ) ( 1 6 8 ) ( 1 6 9 ) ( 1 7 8 ) ( 1 7 9 ) ( 1 8 9 ) ( 2 3 4 ) ( 2 3 5 ) ( 2 3 6 ) ( 2 3 7 ) ( 2 3 8 ) ( 2 3 9 ) ( 2 4 5 ) ( 2 4 6 ) ( 2 4 7 ) ( 2 4 8 ) ( 2 4 9 ) ( 2 5 6 ) ( 2 5 7 ) ( 2 5 8 ) ( 2 5 9 ) ( 2 6 7 ) ( 2 6 8 ) ( 2 6 9 ) ( 2 7 8 ) ( 2 7 9 ) ( 2 8 9 ) ( 3 4 5 ) ( 3 4 6 ) ( 3 4 7 ) ( 3 4 8 ) ( 3 4 9 ) ( 3 5 6 ) ( 3 5 7 ) ( 3 5 8 ) ( 3 5 9 ) ( 3 6 7 ) ( 3 6 8 ) ( 3 6 9 ) ( 3 7 8 ) ( 3 7 9 ) ( 3 8 9 ) ( 4 5 6 ) ( 4 5 7 ) ( 4 5 8 ) ( 4 5 9 ) ( 4 6 7 ) ( 4 6 8 ) ( 4 6 9 ) ( 4 7 8 ) ( 4 7 9 ) ( 4 8 9 ) ( 5 6 7 ) ( 5 6 8 ) ( 5 6 9 ) ( 5 7 8 ) ( 5 7 9 ) ( 5 8 9 ) ( 6 7 8 ) ( 6 7 9 ) ( 6 8 9 ) ( 7 8 9 ) )) ; S (5 6 12) ; size 132 (define s-5-6-12 '( ( 1 2 3 4 5 6 ) ( 1 2 3 4 7 8 ) ( 1 2 3 4 9 10 ) ( 1 2 3 4 11 12 ) ( 1 2 3 5 7 9 ) ( 1 2 3 5 8 11 ) ( 1 2 3 5 10 12 ) ( 1 2 3 6 7 12 ) ( 1 2 3 6 8 10 ) ( 1 2 3 6 9 11 ) ( 1 2 3 7 10 11 ) ( 1 2 3 8 9 12 ) ( 1 2 4 5 7 10 ) ( 1 2 4 5 8 12 ) ( 1 2 4 5 9 11 ) ( 1 2 4 6 7 11 ) ( 1 2 4 6 8 9 ) ( 1 2 4 6 10 12 ) ( 1 2 4 7 9 12 ) ( 1 2 4 8 10 11 ) ( 1 2 5 6 7 8 ) ( 1 2 5 6 9 12 ) ( 1 2 5 6 10 11 ) ( 1 2 5 7 11 12 ) ( 1 2 5 8 9 10 ) ( 1 2 6 7 9 10 ) ( 1 2 6 8 11 12 ) ( 1 2 7 8 9 11 ) ( 1 2 7 8 10 12 ) ( 1 2 9 10 11 12 ) ( 1 3 4 5 7 11 ) ( 1 3 4 5 8 10 ) ( 1 3 4 5 9 12 ) ( 1 3 4 6 7 9 ) ( 1 3 4 6 8 12 ) ( 1 3 4 6 10 11 ) ( 1 3 4 7 10 12 ) ( 1 3 4 8 9 11 ) ( 1 3 5 6 7 10 ) ( 1 3 5 6 8 9 ) ( 1 3 5 6 11 12 ) ( 1 3 5 7 8 12 ) ( 1 3 5 9 10 11 ) ( 1 3 6 7 8 11 ) ( 1 3 6 9 10 12 ) ( 1 3 7 8 9 10 ) ( 1 3 7 9 11 12 ) ( 1 3 8 10 11 12 ) ( 1 4 5 6 7 12 ) ( 1 4 5 6 8 11 ) ( 1 4 5 6 9 10 ) ( 1 4 5 7 8 9 ) ( 1 4 5 10 11 12 ) ( 1 4 6 7 8 10 ) ( 1 4 6 9 11 12 ) ( 1 4 7 8 11 12 ) ( 1 4 7 9 10 11 ) ( 1 4 8 9 10 12 ) ( 1 5 6 7 9 11 ) ( 1 5 6 8 10 12 ) ( 1 5 7 8 10 11 ) ( 1 5 7 9 10 12 ) ( 1 5 8 9 11 12 ) ( 1 6 7 8 9 12 ) ( 1 6 7 10 11 12 ) ( 1 6 8 9 10 11 ) ( 2 3 4 5 7 12 ) ( 2 3 4 5 8 9 ) ( 2 3 4 5 10 11 ) ( 2 3 4 6 7 10 ) ( 2 3 4 6 8 11 ) ( 2 3 4 6 9 12 ) ( 2 3 4 7 9 11 ) ( 2 3 4 8 10 12 ) ( 2 3 5 6 7 11 ) ( 2 3 5 6 8 12 ) ( 2 3 5 6 9 10 ) ( 2 3 5 7 8 10 ) ( 2 3 5 9 11 12 ) ( 2 3 6 7 8 9 ) ( 2 3 6 10 11 12 ) ( 2 3 7 8 11 12 ) ( 2 3 7 9 10 12 ) ( 2 3 8 9 10 11 ) ( 2 4 5 6 7 9 ) ( 2 4 5 6 8 10 ) ( 2 4 5 6 11 12 ) ( 2 4 5 7 8 11 ) ( 2 4 5 9 10 12 ) ( 2 4 6 7 8 12 ) ( 2 4 6 9 10 11 ) ( 2 4 7 8 9 10 ) ( 2 4 7 10 11 12 ) ( 2 4 8 9 11 12 ) ( 2 5 6 7 10 12 ) ( 2 5 6 8 9 11 ) ( 2 5 7 8 9 12 ) ( 2 5 7 9 10 11 ) ( 2 5 8 10 11 12 ) ( 2 6 7 8 10 11 ) ( 2 6 7 9 11 12 ) ( 2 6 8 9 10 12 ) ( 3 4 5 6 7 8 ) ( 3 4 5 6 9 11 ) ( 3 4 5 6 10 12 ) ( 3 4 5 7 9 10 ) ( 3 4 5 8 11 12 ) ( 3 4 6 7 11 12 ) ( 3 4 6 8 9 10 ) ( 3 4 7 8 9 12 ) ( 3 4 7 8 10 11 ) ( 3 4 9 10 11 12 ) ( 3 5 6 7 9 12 ) ( 3 5 6 8 10 11 ) ( 3 5 7 8 9 11 ) ( 3 5 7 10 11 12 ) ( 3 5 8 9 10 12 ) ( 3 6 7 8 10 12 ) ( 3 6 7 9 10 11 ) ( 3 6 8 9 11 12 ) ( 4 5 6 7 10 11 ) ( 4 5 6 8 9 12 ) ( 4 5 7 8 10 12 ) ( 4 5 7 9 11 12 ) ( 4 5 8 9 10 11 ) ( 4 6 7 8 9 11 ) ( 4 6 7 9 10 12 ) ( 4 6 8 10 11 12 ) ( 5 6 7 8 9 10 ) ( 5 6 7 8 11 12 ) ( 5 6 9 10 11 12 ) ( 7 8 9 10 11 12 ) )) ; S (3 4 8) ; hadamard ; size 14 (define s-3-4-8 '( ( 1 2 3 4 ) ( 1 2 5 6 ) ( 1 2 7 8 ) ( 1 3 5 7 ) ( 1 3 6 8 ) ( 1 4 5 8 ) ( 1 4 6 7 ) ( 2 3 5 8 ) ( 2 3 6 7 ) ( 2 4 5 7 ) ( 2 4 6 8 ) ( 3 4 5 6 ) ( 3 4 7 8 ) ( 5 6 7 8 ) )) ; S3 (3 6 12) ; size 22 (define s3-3-6-12 '( ( 1 2 3 4 5 6 ) ( 1 2 3 7 8 9 ) ( 1 2 4 7 10 11 ) ( 1 2 5 8 10 12 ) ( 1 2 6 9 11 12 ) ( 1 3 4 8 11 12 ) ( 1 3 5 9 10 11 ) ( 1 3 6 7 10 12 ) ( 1 4 5 7 9 12 ) ( 1 4 6 8 9 10 ) ( 1 5 6 7 8 11 ) ( 2 3 4 9 10 12 ) ( 2 3 5 7 11 12 ) ( 2 3 6 8 10 11 ) ( 2 4 5 8 9 11 ) ( 2 4 6 7 8 12 ) ( 2 5 6 7 9 10 ) ( 3 4 5 7 8 10 ) ( 3 4 6 7 9 11 ) ( 3 5 6 8 9 12 ) ( 4 5 6 10 11 12 ) ( 7 8 9 10 11 12 ) ))