【问题标题】:Evaluate the Binomial polynomial expression in R评估 R 中的二项式多项式表达式
【发布时间】:2020-08-17 01:01:12
【问题描述】:

我需要计算 r 中的二项多项式表达式。我可以使用 r 中的 polynomial() 函数计算多项式表达式。但除了以多项式计算表达式之外,我希望表达式也必须包含二项式表达式。

例如:在二项式中,

我们知道

1+1 = 0,也就是1 XOR 1 = 0,

现在,如果我们在多项式表达式中做同样的事情,可以通过以下方式完成:

(1+x) + x = 1

我们假设,

x + x 类似于等于 0 的 1 + 1。或者换句话说 x XOR x = 0。

之前,我把整个代码都加到R里了,可能没几个人没看懂问题,可能觉得还是关闭问题比较好。 我需要知道如何在 R 中实现二项多项式表达式中的异或运算。

需要通过以下方式申请:

让 f(x) = (1 + x + x^3) 和 g(x) = (x + x^3),

因此对于 f(x) 和 g(x) 的总和,我需要执行以下操作:

f(x) + g(x) = (1 + x + x^3) + (x + x^3)

= 1 + (1 + 1)x + (1 + 1)x^3(在 Z2 中使用加法模 2)

= 1 + (0)x + (0)x^3

= 1.

我希望,这一次我更清楚我到底想要什么,我的问题也更容易理解。

提前致谢

【问题讨论】:

  • 还是不清楚,抱歉。 R 内置了一个xor() 运算符。对于给定的逻辑x,您可以进行计算:x <- TRUE; xor(xor(TRUE,x), x)。我知道没有一种简单的方法可以告诉 R 一般 xor(x,x) 是 FALSE(或 0)。 “二项多项式表达式”是什么意思???
  • 我开始明白了,但我不明白你的多项式中的系数是什么。它们也会是二进制(真/假)值吗?
  • 此时,假设系数是 2 个参数,x 和 (1+x)。您添加它们,它会为您提供正常多项式函数为 1+2x。但是如果你这样做,在二进制多项式中,它会给你 1。因为我们假设 x+x (x XOR x) = 0。
  • 我不知道你在问什么。你一直在“二进制”和“二项式”之间切换,这是故意的吗?另外你什么时候定义f(x)x代表0/1所以它真的是f(0)f(1),它们产生不同的值?或者你是说它不是一个函数并且总是为任何x 返回相同的输出?通常是二进制1+1 = 10,而不是0。我对您使用这些术语的方式感到非常困惑。
  • 感谢您指出这一点,这不是故意的。我更新了我写“二进制”的问题。我需要在二项式多项式中得到答案。除此之外,f(x) 要么代表 0 要么代表 1。f(x) 在 z2 下是封闭的

标签: r polynomial-math


【解决方案1】:
XOR <- function(x,y) (x+y) %% 2

会给你一个符合你定义的 XOR 函数。

【讨论】:

  • 不,这没那么简单。取模2,将使整个多项式输出0。例如:y = 1+x,所以XOR函数取2个参数值,x和1+x。如果我们取 (x + (1+x)) %% 2 的模数,它给出的输出是 0。相反,它应该给出 1。
  • 所以你的值需要两个组件? 1 的系数和 x 的系数(都可以是 0 或 1)?你想用它做代数吗?例如x^n == x?
  • 我刚刚更新了我的问题。检查新示例。它是对 z2 的数学计算,表示仅适用于 {0,1} 的多项式。
【解决方案2】:

为我自己的问题添加解决方案。

基本上我们需要先计算多项式。简单地说我们是怎么做的。这是第一步。例如添加 f(x) 和 g(x),创建如下函数

bPolynomial<-function(f, g){
 K <- polynomial()
 K <- (1 + x + x^3) + (x + x^3) # where f is  (1 + x + x^3), and g is (x + x^3)

}

然后第二个是,从上述多项式中提取系数并将它们减少到模 2,使用以下代码:

coeff <- coefficients(C_D) %% 2
    print(coeff)
    C_D <- polynomial(c(coeff))

就是这样。你会得到想要的结果。我确实为陷入非常基本的事情而感到愚蠢。但是用数学计算的实现有时会让人感到困惑,我也发生了同样的事情..! 希望它对其他人有所帮助。谢谢。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-31
    • 1970-01-01
    • 1970-01-01
    • 2016-08-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多