最近在看CKKS方案,里面的编码/解码用到了n次单位根,感觉基于环上的加密,很多都会用到,现在系统的学习一下!

定义

先看定义:

\[z^n=1,(n=1,2,3,...)
\]

该方程的根z为n次单位根,就是说这些根是复数!

简单说:n次方根,就是多项式\(x^n-1\)或方程\(x^n-1=0\)在复数域内的n个不同的根,简称单位根

具体来讲,单位根有n次根的有n个:$$z_i=e^{2\pi ki/n },(k=0,1,2,..,n-1)$$

复数域内:$$x_k=cos(2k\pi/n)+sin(2k\pi/n)I,(k=0,1,2,..,n-1),i是虚数单位$$

举个例子:

其中提到了“本源根”,后面再去单独介绍!

性质

1、对于方程\(x^n-1=0\),不同的我单位根只有n个

例如:取k=0,1,2,..,n-1,就得到n个不同的n次单位根

取\(k=q*n+m,(q\in \mathbb{Z}^+,m=(0,1,...,n-1))\)时,\(x_k=x_{q*n+m}=x_m\)

2、n次单位根的模为1,即\(|x_k|=1\)

3、两个n次单位根(\(x_i,x_j\))的乘积,仍是一个n次单位根\(w_i*w_j=W_{i+j}\),则:

(1)\((x_i)^{-1}=x_{-I}\)

(2)\((x_m)^{k}=x_{m*k}\),(m,k是任意整数,当k=0时,\((x_m)^{0}=1=x_{0}\))

(3)\(x_{m}=x_l\):需要gcd(m,l)=1

(4)任何一个单位根都可以写为\(x_0\)的幂,如\(x_m=(x_1)^m\),这种根叫做n次本原单位根,简称n次原根或原根。当p和n互素且\(1 \leqslant p < n\)时,\(x_1^p\)都是n次本原单位根

(5)一个n次单位根的共轭复数也是一个n次单位根,记 \(\overline{x}=x_{n-m}\)

(6)对于任意的l和r,都有\((x_i)^r=(x_r)^l\)

(7)若a是整数,则

\[1+x_1^a+x_2^a+...+x_{n-1}^a=\left\{\begin{matrix}
\\n,gcd(a,n)=1
\\
\\
\\0,gcd(a,n)\neq 1
\end{matrix}\right.\]

(8)全部单位根把复数平面的单位圆周(|z|=1)n等分了,构成了外接圆半径为1的正n边形的顶点,其中一个顶点为 \(x_0(1,0)\)

举例:

n次单位根(n-th unit root)的更多相关文章

  1. Unable to resolve persistence unit root URL

    异常信息 时间:2017-03-07 11:46:05,516 - 级别:[ WARN] - 消息: [other] The web application [ROOT] appears to hav ...

  2. DFT/FFT/NTT

    在Seal库和HElib库中都用到了NTT技术,用于加快多项式计算,而NTT又是FFT的优化,FFT又来自于DFT,现在具体学习一下这三个技术! 基础概念 名词区分 1.DFT:离散傅立叶变换 2.F ...

  3. 计量经济与时间序列_ADF单位根检验步骤

    1 ADF检验也叫扩展的迪克富勒检验,主要作用是检测序列的平稳性,也是最常用检测序列平稳性的检验方法. 2 何为:平稳性?单位根?(略),见这部分随便的其他内容有讲解.是建模对数据的先决条件. 3 A ...

  4. nginx unit PHP

    2018-12-26 14:20:33 星期三 综述: nginx unit php 的关系: nginx -> 转发请求到 8300端口 -> unit 转发 8300 收到的请求 -& ...

  5. Systemd unit generators unit

    systemd.generator(7) - Linux manual page http://man7.org/linux/man-pages/man7/systemd.generator.7.ht ...

  6. python时间序列分析

              题记:毕业一年多天天coding,好久没写paper了.在这动荡的日子里,也希望写点东西让自己静一静.恰好前段时间用python做了一点时间序列方面的东西,有一丁点心得体会想和大家 ...

  7. spring boot 部署为jar

    前言 一直在ide中敲代码,使用命令行mvn spring-boot:run或者gradlew bootRun来运行spring boot项目.想来放到prod上面也应该很简单.然而今天试了下,各种问 ...

  8. POJ 3342 - Party at Hali-Bula 树型DP+最优解唯一性判断

    好久没写树型dp了...以前都是先找到叶子节点.用队列维护来做的...这次学着vector动态数组+DFS回朔的方法..感觉思路更加的清晰... 关于题目的第一问...能邀请到的最多人数..so ea ...

  9. 概率论:假设检验-t检验和Augmented Dickey–Fuller test

    http://blog.csdn.net/pipisorry/article/details/51184556 T检验 T检验,亦称student t检验(Student's t test),学生t检 ...

随机推荐

  1. jquery 的 ajax 传输 数组 ,但后台无法获取的 原因 与 解决 办法

    1.前言 js传输数组到服务器 ,controller无法解析 ,打印结果是 null 2.原因 jQuery会调用jQuery.param序列化参数,源码是 jQuery.param( obj, t ...

  2. react中自定义antd主题与支持less(第二部)

    自定义主题 首先自定义主题需要修改antd,antd本身也是less写的之后编译成css的,所以当我们需要使用less. 1.yarn add react-app-rewire-less --dev ...

  3. 第10组 Alpha冲刺 (1/6)

    1.1基本情况 ·队名:今晚不睡觉 ·组长博客:https://www.cnblogs.com/cpandbb/ ·作业博客:https://edu.cnblogs.com/campus/fzu/FZ ...

  4. 学习笔记--Java标识符

    Java标识符 /** * 关于 Java 语言当中的标识符 * * 1. 什么是标识符? * - 在 Java 源程序当中凡是程序员有权利自己命名 * - 标识符可以标识(类名.方法名.变量名.常量 ...

  5. SYCOJ2140祝福短信

    题目-祝福短信 (shiyancang.cn) 1 #include<bits/stdc++.h> 2 using namespace std; 3 map<string,bool& ...

  6. 记一次 .NET 某消防物联网 后台服务 内存泄漏分析

    一:背景 1. 讲故事 去年十月份有位朋友从微信找到我,说他的程序内存要炸掉了...截图如下: 时间有点久,图片都被清理了,不过有点讽刺的是,自己的程序本身就是做监控的,结果自己出了问题,太尴尬了 二 ...

  7. 万字总结Keras深度学习中文文本分类

    摘要:文章将详细讲解Keras实现经典的深度学习文本分类算法,包括LSTM.BiLSTM.BiLSTM+Attention和CNN.TextCNN. 本文分享自华为云社区<Keras深度学习中文 ...

  8. 使用redis+lua实现SQL中的select intersect的效果

    公众号文章地址 1.需求 业务中需要实现在两个集合中搜索数据,并返回交集. 用SQL的伪代码可以描述如下: select key from set1 where sorted_key between ...

  9. Cesium中级教程8 - Introduction to Particle Systems 粒子系统入门

    Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ What is a particle system? 什么是粒子 ...

  10. Solon 1.6.18 发布,轻量级应用开发框架

    关于官网 千呼万唤始出来: https://solon.noear.org .整了一个月多了...还得不断接着整! 关于 Solon Solon 是一个轻量级应用开发框架.支持 Web.Data.Jo ...