FunctionSurjective[f,x]
测试对于每一个 y∈Reals,
是否至少有一个解
.
FunctionSurjective[f,x,dom]
测试对于每一个 y∈dom,
是否至少有一个解 x∈dom.
FunctionSurjective[{f1,f2,…},{x1,x2,…},dom]
测试对于每一个 y1,y2,…∈dom,
是否至少有一个解 x1,x2,…∈dom.
FunctionSurjective[{funs,xcons,ycons},xvars,yvars,dom]
测试对于每一个受约束条件 ycons 限制的 yvars∈dom,
是否至少有一个受约束条件 xcons 限制的解 xvars∈dom.
FunctionSurjective
FunctionSurjective[f,x]
测试对于每一个 y∈Reals,
是否至少有一个解
.
FunctionSurjective[f,x,dom]
测试对于每一个 y∈dom,
是否至少有一个解 x∈dom.
FunctionSurjective[{f1,f2,…},{x1,x2,…},dom]
测试对于每一个 y1,y2,…∈dom,
是否至少有一个解 x1,x2,…∈dom.
FunctionSurjective[{funs,xcons,ycons},xvars,yvars,dom]
测试对于每一个受约束条件 ycons 限制的 yvars∈dom,
是否至少有一个受约束条件 xcons 限制的解 xvars∈dom.
更多信息和选项
- 满射函数亦称为 onto 或 onto 映射.
- 如果对于每个
,至少存在一个
,使得
,则函数
是满射的. - 如果 funs 含有除 xvars 之外的参数,则结果通常为 ConditionalExpression.
- dom 的可能的值为 Reals 和 Complexes. 如果 dom 是 Reals,则所有变量、参数、常数和函数值都必须为实数.
- funs 的定义域受 FunctionDomain 给定的条件限制.
- xcons 和 ycons 可含有等式、不等式或它们的逻辑组合.
- 如果映射
是满射,则 FunctionSurjective[{funs,xcons,ycons},xvars,yvars,dom] 返回 True,其中
是 xcons 的解集,
是 ycons 的解集. - 可给出以下选项:
-
Assumptions $Assumptions 对参数的设定 GenerateConditions True 是否生成关于参数的条件 PerformanceGoal $PerformanceGoal 优先考虑速度还是质量 - GenerateConditions 的可能的设置包括:
-
Automatic 只给出非通用条件 True 给出所有条件 False 不给出条件 None 如果需要条件则不经计算直接返回 - PerformanceGoal 的可能设置为 "Speed" 和 "Quality".
范例
打开所有单元 关闭所有单元基本范例 (4)
FunctionSurjective[Tan[x], x]FunctionSurjective[Tan[x], x, Complexes]FunctionSurjective[{x + y ^ 3, y - x ^ 5}, {x, y}]FunctionSurjective[a x ^ 2 + b x y + c y ^ 2, {x, y}]范围 (12)
FunctionSurjective[x ^ 3 - x, x]Plot[{x ^ 3 - x, 1 / 4}, {x, -2, 2}]FunctionSurjective[{x ^ 3 - x, x > 0}, x]Plot[{x ^ 3 - x, -1}, {x, 0, 2}]FunctionSurjective[{x ^ 3 - x, x > 0, y > 0}, x, y]Plot[{x ^ 3 - x, 1}, {x, 0, 2}]FunctionSurjective[E ^ x, x, Complexes]Reduce[E ^ x == 0, x]FunctionSurjective[{E ^ x, True, y ≠ 0}, x, y, Complexes]FunctionSurjective[{x / 2 + 1, Element[x, Integers], Element[y, Integers]}, x, y]A = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};FunctionSurjective[A.{x, y, z}, {x, y, z}]B = {{1, 2, 3}, {4, 5, 6}, {7, 8, 0}};FunctionSurjective[B.{x, y, z}, {x, y, z}]当且仅当线性映射的矩阵的秩等于其陪域的维数,线性映射才是满射的:
{MatrixRank[A], MatrixRank[B]}FunctionSurjective[x ^ 2 + x y - y ^ 2, {x, y}]Plot3D[{x ^ 2 + x y - y ^ 2, -1}, {x, -3, 3}, {y, -3, 3}]FunctionSurjective[x ^ 2 + x y + y ^ 2, {x, y}]Plot3D[{x ^ 2 + x y + y ^ 2, -1}, {x, -3, 3}, {y, -3, 3}]FunctionSurjective[{x + y ^ 2, y - x ^ 2}, {x, y}]FunctionSurjective[{x + y ^ 2, y - x ^ 2}, {x, y}, Complexes]FunctionSurjective[a x ^ 2 + b x + c, x]FunctionSurjective[{x ^ 2 + 2 x y, y ^ 2 + a x y}, {x, y}]选项 (4)
Assumptions (1)
此处,FunctionSurjective 给出有条件的答案:
FunctionSurjective[{x ^ 2 + 2 x y, y ^ 2 + a x y}, {x, y}]FunctionSurjective[{x ^ 2 + 2 x y, y ^ 2 + a x y}, {x, y}, Assumptions -> a ≤ 1 / 2]GenerateConditions (2)
默认情况下,FunctionSurjective 可能会对符号参数生成条件:
FunctionSurjective[a x ^ 2 + b x y + c y ^ 2, {x, y}]如果设置 GenerateConditionsNone,FunctionSurjective 会失败,而不是给出有条件的结果:
FunctionSurjective[a x ^ 2 + b x y + c y ^ 2, {x, y}, GenerateConditions -> None]FunctionSurjective[a x ^ 2 + b x y + c y ^ 2, {x, y}, GenerateConditions -> False]FunctionSurjective[a x ^ 2 + b x + c, x]如果设置 GenerateConditionsAutomatic,不报告通常为真的条件:
FunctionSurjective[a x ^ 2 + b x + c, x, GenerateConditions -> Automatic]PerformanceGoal (1)
用 PerformanceGoal 避免潜在费时的计算:
FunctionSurjective[x ^ 2 + y ^ 2 + a x y, {x, y}, PerformanceGoal -> "Speed"]FunctionSurjective[x ^ 2 + y ^ 2 + a x y, {x, y}]应用 (11)
基本应用 (7)
FunctionSurjective[Log[x ^ 2], x]Plot[{Log[x ^ 2], -1, 1}, {x, -3, 3}]FunctionSurjective[Csch[x], x]Plot[{Csch[x], 0}, {x, -2, 2}]FunctionSurjective[Sqrt[x], x]Plot[{Sqrt[x], -1}, {x, -2, 2}]FunctionSurjective[{Sqrt[x], x ≥ 0, y ≥ 0}, x, y]Plot[{Sqrt[x], 1}, {x, 0, 4}, PlotRange -> All]FunctionSurjective[CatalanNumber[x], x]Plot[{CatalanNumber[x], -1, 1 / 2, 2}, {x, -2.5, 2.5}]FunctionSurjective[CosIntegral[x], x]Plot[{CosIntegral[x], 3 / 4}, {x, -1, 10}]FunctionSurjective[RiemannSiegelTheta[x], x]Manipulate[Plot[{RiemannSiegelTheta[x], a}, ...], {{a, 2}, -5, 5}]FunctionSurjective[FresnelS[x], x]Manipulate[Plot[{FresnelS[x], a}, ...], {{a, 0.8}, -1, 1}]MaxValue[Abs[Sin[x]], x]FunctionSurjective[Sin[x], x]f[x_] := x ^ 4 - 2x ^ 2 + x / 2 + 1f[-3 / 2] < f[3 / 2]用 FunctionContinuous 查看
是否在
上连续:
FunctionContinuous[{f[x], -3 / 2 ≤ x ≤ 3 / 2}, x]FunctionSurjective[{f[x], -3 / 2 ≤ x ≤ 3 / 2, f[-3 / 2] ≤ y ≤ f[3 / 2]}, x, y]Plot[{f[x], f[-3 / 2], f[3 / 2]}, {x, -3 / 2, 3 / 2}, Rule[...]]Subscript[A, 1] = {{1, 2, 3}, {4, 5, 6}};MatrixRank[Subscript[A, 1]]FunctionSurjective[Subscript[A, 1].{x, y, z} + {7, 8}, {x, y, z}]Subscript[A, 2] = {{1, 2, 3}, {2, 4, 6}};MatrixRank[Subscript[A, 2]]FunctionSurjective[Subscript[A, 2].{x, y, z} + {7, 8}, {x, y, z}]解方程与不等式 (1)
f[x_] := x / (x ^ 2 - 1)FunctionSurjective[f[x], x]Reduce[f[x] == y, x, Reals]用 Resolve 查看用 quantifier 表示的条件:
Resolve[ForAll[y, Exists[x, f[x] == y]], Reals]Plot[f[x], {x, -3, 3}]概率与统计 (3)
在定义域上,连续分布的 CDF 是到概率区间 (0,1) 的满射函数:
cdf = CDF[NormalDistribution[0, 1], x]Plot[cdf, {x, -3, 3}]FunctionSurjective[{cdf, True, 0 < y < 1}, x, y]在定义域上,连续分布的 SurvivalFunction 是到概率区间 (0,1) 的满射函数:
sf = SurvivalFunction[NormalDistribution[0, 1], x]Plot[sf, {x, -3, 3}]FunctionSurjective[{sf, True, 0 < y < 1}, x, y]一个分布的分位数函数 Quantile 是到分布的域上的满射函数:
qf = Quantile[NormalDistribution[0, 1], q]Plot[qf, {q, 0, 1}]FunctionSurjective[{qf, 0 < q < 1}, q]属性和关系 (3)
FunctionSurjective[x ^ 2 + x + 1, x]FunctionSurjective[x ^ 3 + x + 1, x]用 Solve 求出解:
Solve[x ^ 2 + x + 1 == y, x, Reals]Solve[x ^ 3 + x + 1 == y, x, Reals]一个在区间上连续的实函数是满射的,当且仅当它在端点处的极限是
和
:
FunctionSurjective[{Sec[x], -Pi / 2 < x < Pi / 2}, x]FunctionSurjective[{Tan[x], -Pi / 2 < x < Pi / 2}, x]Plot[{Sec[x], Tan[x]}, {x, -Pi / 2, Pi / 2}]用 Limit 计算极限:
Limit[{Sec[x], Tan[x]}, x -> -Pi / 2, Direction -> "FromAbove"]Limit[{Sec[x], Tan[x]}, x -> Pi / 2, Direction -> "FromBelow"]如果函数的 FunctionRange 为 True 则函数是满射的:
FunctionRange[x Sin[x], x, y]FunctionSurjective[x Sin[x], x]可能存在的问题 (1)
FunctionSurjective 用 FunctionDomain 确定函数的实定义域:
FunctionSurjective[{Cosh[Sqrt[x]], True, y ≥ 0}, x, y]在 FunctionDomain 给出的实定义域上,
不是到
的满射函数:
FunctionDomain[Cosh[Sqrt[x]], x]Plot[{Cosh[Sqrt[x]], 1 / 2}, {x, 0, 10}]Plot[{Cosh[Sqrt[x]], 1 / 2}, {x, -10, 10}]Refine[Element[Sqrt[x], Reals], x < 0]相关指南
文本
Wolfram Research (2020),FunctionSurjective,Wolfram 语言函数,https://reference.wolfram.com/language/ref/FunctionSurjective.html.
CMS
Wolfram 语言. 2020. "FunctionSurjective." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/FunctionSurjective.html.
APA
Wolfram 语言. (2020). FunctionSurjective. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/FunctionSurjective.html 年
BibTeX
@misc{reference.wolfram_2026_functionsurjective, author="Wolfram Research", title="{FunctionSurjective}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/FunctionSurjective.html}", note=[Accessed: 18-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_functionsurjective, organization={Wolfram Research}, title={FunctionSurjective}, year={2020}, url={https://reference.wolfram.com/language/ref/FunctionSurjective.html}, note=[Accessed: 18-June-2026]}