大型运算符提示表达式的信息,或者表示对求值项进行某些操作。
∑ \sum ∑是最经典的大型运算符。
∑ \sum ∑符号表示求和。可能会带有上标,下标。
∑ \sum ∑最基础的用法是这样:
这表示枚举整数i∈[1,n],对求出所有ai的和:
在一些格式(如Latex)中难以打出上标、下标,因此也可以写成右上标、右下标的格式: ∑ i = 1 n a i \sum_{i=1}^n a_i ∑i=1nai
这里的上标表示i<=n,而不是连续求值n项。
∑ \sum ∑可以有这些参数:
一般,下标指定了一个枚举下界,上标指定了一个枚举上界。
上下标都是可有可无的,但是必须要有求值项。
有时候,下标足以表示枚举范围,就没有了上标。
比如这种情况:
又比如这种:
这表示对n的所有正约数求和。重复的约数只计算一次,例如:
4的约数有{1,4},{2,2}两对,但是2只计算一次:
也就是说:
方括号是埃弗森括号,用法是[p],p是一个命题。当命题为真是,艾弗森括号的值为1,否则为0.
下标也可以不提示范围:
这往往表明在上下文中提及了求和范围,因此省略了。或者是表示对所有i∈f的定义域求和。
下标也可以指出变量,之后再追加变量的范围:
为便于处理,通常使得一个 ∑ \sum ∑对应一个新指出的变量:
下标也可以表示一个命题,表示使得此命题为真的变量求值:
∑ \sum ∑也可以什么都不提示:
这个式子来自数论分块,由于l、r的含义较难用符号表达,因此直接不写。
事实上, ∑ \sum ∑还可以直接引导一个集合:
∑ { a 1 , b 4 , c } = a 1 + b 4 + k \sum\{a_1,b_4,c\}=a_1+b_4+k ∑{a1,b4,c}=a1+b4+k
由 ∑ \sum ∑引导的式子称为和式。
这个符号表示将a的[1,n]项都乘起来,有着与 ∑ \sum ∑类似的用法。
这里记录了一些其他大型运算符。
集合大型运算符: ⋂ \bigcap ⋂ ⋃ \bigcup ⋃
余积: ⨿ \amalg ⨿
积分符号。
大型运算符也可以自己定义。
定义的方法是,把原有符号写大,可以写上下标。
这样就表示从序列a的[l,r]区间中取最大值:
这样就表示求[1,n]异或和:
一般来说,如果没有括号,大型运算符一直计算到式子末尾。如果有括号括住大型运算符,大型运算符计算括号内的所有东西。
例如:
∑ i = 1 n a i b i + f ( i − 1 ) + 3 + ∏ j = 1 m c j = ∑ i = 1 n ( a i b i + f ( i − 1 ) + 3 + ∏ j = 1 m c j ) \sum_{i=1}^na_ib_i+f(i-1)+3+\prod_{j=1}^m c_j=\sum_{i=1}^n(a_ib_i+f(i-1)+3+\prod_{j=1}^m c_j) ∑i=1naibi+f(i−1)+3+∏j=1mcj=∑i=1n(aibi+f(i−1)+3+∏j=1mcj)
有括号只计算自己括号内的:
( ∑ i = 1 a i ) + ( ∑ j = 1 b j ) (\sum_{i=1}a_i)+(\sum_{j=1}b_j) (∑i=1ai)+(∑j=1bj)
然而,有些时候为了简洁,如果能明确求和次序,那括号可以不写:
( ∑ i = 1 a i ) + ( ∑ i = 1 b i c i ) = ∑ i = 1 a i + ∑ i = 1 b i c i (\sum_{i=1}a_i)+(\sum_{i=1}b_i^{c_i})=\sum_{i=1}a_i+\sum_{i=1}b_i^{c_i} (∑i=1ai)+(∑i=1bici)=∑i=1ai+∑i=1bici
这里变量i被声明了两次,显然左右两个和式是并列计算的关系,而不是嵌套计算。
为了接下来的行文简洁,我们定义 I \mathbb{I} I或表示循环记号。用法是:
I i = 1 n \overset{n}{\underset{i=1}{\mathbb{I}}} i=1In来表示按照下标顺次展开元素,比如:
I i = 1 n { a i ⋅ x i = b i ⇔ { a 1 ⋅ x 1 = b 1 a 2 ⋅ x 2 = b 2 . . . a n − 1 ⋅ x n − 1 = b n − 1 a n ⋅ x n = b n \overset{n}{\underset{i=1}{\mathbb{I}}}\left\{\begin{matrix} a_i\cdot x_i =b_i \end{matrix}\right.\Leftrightarrow \left\{\begin{matrix} a_1\cdot x_1=b_1\\ a_2\cdot x_2=b_2\\ ...\\ a_{n-1}\cdot x_{n-1}=b_{n-1}\\ a_n\cdot x_n=b_n \end{matrix}\right. i=1In{ai⋅xi=bi⇔⎩ ⎨ ⎧a1⋅x1=b1a2⋅x2=b2...an−1⋅xn−1=bn−1an⋅xn=bn
又如:
I i = 1 m ( m i n ) ⇔ ( m 1 , m 2 , . . . , m m − 1 , m m n ) \overset{m}{\underset{i=1}{\mathbb{I}}}\left(_{m_i}^{n}\right) \Leftrightarrow \left(^{\;\;\;\;\;\;\;\;\;\;\;\;\;\;n}_{m_1,m_2,...,m_{m-1},m_m}\right) i=1Im(min)⇔(m1,m2,...,mm−1,mmn)
有时候有箭头表示展开方向:
I i = 1 n { ↓ a i ⋅ x i = b i ⇔ { a 1 ⋅ x 1 = b 1 a 2 ⋅ x 2 = b 2 . . . a n − 1 ⋅ x n − 1 = b n − 1 a n ⋅ x n = b n \overset{n}{\underset{i=1}{\mathbb{I}}}\left\{\begin{matrix} \downarrow a_i\cdot x_i =b_i \end{matrix}\right.\Leftrightarrow \left\{\begin{matrix} a_1\cdot x_1=b_1\\ a_2\cdot x_2=b_2\\ ...\\ a_{n-1}\cdot x_{n-1}=b_{n-1}\\ a_n\cdot x_n=b_n \end{matrix}\right. i=1In{↓ai⋅xi=bi⇔⎩ ⎨ ⎧a1⋅x1=b1a2⋅x2=b2...an−1⋅xn−1=bn−1an⋅xn=bn
I i = 1 n { ↑ a i ⋅ x i = b i ⇔ { a n ⋅ x n = b n a n − 1 ⋅ x n − 1 = b n − 1 . . . a 2 ⋅ x 2 = b 2 a 1 ⋅ x 1 = b 1 \overset{n}{\underset{i=1}{\mathbb{I}}}\left\{\begin{matrix} \uparrow a_i\cdot x_i =b_i \end{matrix}\right.\Leftrightarrow \left\{\begin{matrix} a_n\cdot x_n=b_n\\ a_{n-1}\cdot x_{n-1}=b_{n-1}\\ ...\\ a_2\cdot x_2=b_2\\ a_1\cdot x_1=b_1 \end{matrix}\right. i=1In{↑ai⋅xi=bi⇔⎩ ⎨ ⎧an⋅xn=bnan−1⋅xn−1=bn−1...a2⋅x2=b2a1⋅x1=b1
I i = 1 m ( m i ← n ) ⇔ ( m m , m m − 1 , . . . , m 2 , m 1 n ) \overset{m}{\underset{i=1}{\mathbb{I}}} \left(_{\underleftarrow{m_i}}^{n}\right) \Leftrightarrow \left(^{\;\;\;\;\;\;\;\;\;\;\;\;\;\;n}_{m_m,m_{m-1},...,m_2,m_1}\right) i=1Im(min)⇔(mm,mm−1,...,m2,m1n)
于是皆大欢喜。