File: sheaf-doc.m2

package info (click to toggle)
macaulay2 1.21%2Bds-3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 133,096 kB
  • sloc: cpp: 110,377; ansic: 16,306; javascript: 4,193; makefile: 3,821; sh: 3,580; lisp: 764; yacc: 590; xml: 177; python: 140; perl: 114; lex: 65; awk: 3
file content (173 lines) | stat: -rw-r--r-- 4,950 bytes parent folder | download | duplicates (2)
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
document {
     Key => CoherentSheaf,
     Headline => "the class of all coherent sheaves"
     }

document {
     Key => sheaf,
     Headline => "make a coherent sheaf"
     }

document {
     Key => (sheaf, Variety, Module),
     Headline => "make a coherent sheaf",
     Usage => "sheaf(X,M)",
     Inputs => {"X","M"},
     Outputs => {{ "the coherent sheaf on the variety ", TT "X", " corresponding to the module ", TT "M" }},
     PARA{
     	  "If ", TT "X", " is the affine variety ", TT "Spec R", ", then ", TT "M", " should be an ", TT "R", "-module.  If ", TT "X", " is
     	  the projective variety ", TT "Proj R", ", then ", TT "M", " should be a homogeneous ", TT "R", "-module."
	  }
     }

document {
     Key => (sheaf, Variety, Ring),
     Headline => "make a coherent sheaf of rings",
     TT "sheaf(X,R)", " -- produce the coherent sheaf on the variety ", TT "X", " corresponding
     to the ring ", TT "R", ".  The variety ", TT "X", " must be ", TT "Spec R", " or ", TT "Proj R", ".",
     EXAMPLE lines ///
     R = QQ[x,y,z]
     X = Proj R
     Y = Spec R
     sheaf(X,R)
     sheaf(Y,R)
     ///}

document {
     Key => (sheaf, Variety),
     Headline => "make a coherent sheaf",
     Usage => "sheaf X",
     Inputs => {"X"},
     Outputs => {{ "the structure sheaf of rings on the variety ", TT "X" }},
     EXAMPLE lines ///
     R = QQ[x,y,z]
     X = Proj R
     Y = Spec R
     sheaf X
     sheaf Y
     ///
     }

document {
     Key => {(sheaf, Module),(symbol ~, Module)},
     Headline => "make a coherent sheaf",
     Usage => "sheaf M\nM~",
     Inputs => {"M" => "homogeneous" },
     Outputs => {{ "the coherent sheaf on a projective variety ", TT "X", " corresponding to ", TT "M" }},
     EXAMPLE lines ///
     R = QQ[x,y,z];
     X = Proj R
     M = R^{1,2,3}
     sheaf M
     M~
     ///
     }

document {
     Key => {(sheaf, Ring),(symbol ~, Ring)},
     Headline => "make a coherent sheaf of rings",
     Usage => "sheaf R\nR~",
     Inputs => {"R"},
     Outputs => {{"the coherent sheaf on a projective variety ", TT "X", " corresponding to ", TT "M"}},
     EXAMPLE lines ///
     R = QQ[x,y,z];
     X = Proj R
     sheaf R
     R~
     ///
     }

document {
     Key => {(Proj, Ring), Proj},
     Headline => "make a projective variety",
     Usage => "Proj R",
     Inputs => {"R"},
     Outputs => {{ "the projective variety (or scheme) formed from the graded ring ", TT "R" }},
     EXAMPLE lines ///
     R = QQ[x,y];
     Proj R
     ///
     }


document {
     Key => (module, CoherentSheaf),
     Headline => "get the module defining a coherent sheaf",
     Usage => "module F",
     Inputs => {"F"},
     Outputs => {{"the module from which the coherent sheaf ", TT "F", " was defined"}},
     EXAMPLE lines ///
     X = Proj(QQ[x,y,z])
     F = OO_X(3)
     module F
     degrees oo
     ///,
     SeeAlso => { OO, degrees, Proj }
     }

document {
     Key => (symbol ++, CoherentSheaf, CoherentSheaf),
     Headline => "direct sum of coherent sheaves",
     Usage => "F ++ G",
     Inputs => {"F","G"},
     Outputs => {{"the direct sum of ", TT "F", " and ", TT "G"}},
     EXAMPLE lines ///
     X = Proj(QQ[x,y,z])
     OO_X(3) ++ OO_X(4)
     module oo
     ///
     }

document {
     Key => (symbol **, CoherentSheaf, CoherentSheaf),
     Headline => "tensor produce of coherent sheaves",
     Usage => "F ** G",
     Inputs => {"F","G"},
     Outputs => {{"the tensor product of ", TT "F", " and ", TT "G"}},
     EXAMPLE lines ///
     X = Proj(QQ[x,y,z])
     OO_X(-3) ++ OO_X(4)
     oo ** oo
     ///
     }

document {
     Key => {(symbol SPACE, CoherentSheaf, ZZ), (symbol SPACE, SheafOfRings, ZZ)},
     Headline => "canonical twist of a coherent sheaf",
     Usage => "F(n)",
     Inputs => {"F" => {"or ", ofClass SheafOfRings, ", on a projective variety"}, "n"},
     Outputs => { CoherentSheaf => "the twist of F on a projective variety by the n-th power of the hyperplane line bundle." },
     EXAMPLE lines ///
     X = Proj(QQ[x,y,z])
     F = OO_X
     G = F(3)
     module G
     degrees oo
     ///
     }

document {
     Key => {(symbol /, CoherentSheaf, CoherentSheaf), (symbol /, CoherentSheaf, Ideal)},
     Headline => "quotient of coherent sheaves",
     Usage => "F / G",
     Inputs => { "F", "G" => {"or ", ofClass Ideal} },
     Outputs => { CoherentSheaf => {"the quotient sheaf ", TT "F/G"} },
     "We compute the cohomology of two sheaves supported on an elliptic curve.",
     EXAMPLE lines ///
     X = Proj(QQ[x,y,z])
     I = ideal(y^2*z-x*(x-z)*(x-11*z))
     N = (sheaf module I)/(sheaf module I^2)
     G = OO_X^1/I
     HH^1(G)
     HH^1(N)
     ///,
     SeeAlso => {Proj, Spec, sheaf, (cohomology,ZZ,CoherentSheaf), OO}
     }

document {
     Key => (exteriorPower, ZZ, CoherentSheaf),
     Usage => "exteriorPower(i,F)",
     Inputs => {"i","F"},
     Outputs => {{ "the ", TT "i", "-th exterior power of ", TT "F"}}
     }