TFHE中的数据结构Torus

点个关注吧!!

一、理论概念
Torus是一个 [ 0 , 1 ) [0,1) [0,1)的集合(数模1运算)。取值范围通常有符号实数: [ − 1 / 2 , 0 ) ∪ [ 0 , 1 / 2 ) [-1/2,0)\cup [0,1/2) [1/2,0)[0,1/2)
本文用T表示Torus。

T满足加法交换群(阿贝尔群),乘法定义了外积(T中元素和整数群中元素做乘法)但未定义内积(T中元素做乘法)。因此T不是一个环。

如果T是一个环,那么满足 ( a + b ) × c = a c + b c (a+b)\times c=ac+bc (a+b)×c=ac+bc
反例:$a=2/5,b=4/5,c=1/3. $
( a + b ) × c = 1 / 5 × 1 / 3 = 1 / 15 (a+b)\times c=1/5\times 1/3=1/15 (a+b)×c=1/5×1/3=1/15,
a c + b c = 2 / 15 + 4 / 15 = 6 / 15 ac+bc=2/15+4/15=6/15 ac+bc=2/15+4/15=6/15

外积 k ∈ Z k\in \mathbb{Z} kZ, t ∈ T t\in T tT,定义 k ⋅ t = t + t + , . . . , + t k\cdot t=t+t+,...,+t kt=t+t+,...,+t

离散Torus
对于元素 t ∈ T t\in T tT和基值 B B B,可以将 t t t表示为 t = ∑ 1 ∞ t j B − j t=\sum_{1}^{\infty} t_jB^{-j} t=1tjBj

举例:
B = 10 , A = 2 = 0.4142..... = 4 ⋅ 1 0 − 1 + 1 ⋅ 1 0 − 2 + 4 ⋅ 1 0 − 3 + 2 ⋅ 1 0 − 4 + . . . . B=10,A=\sqrt{2}=0.4142.....=4\cdot10^{-1}+1\cdot10^{-2}+4\cdot10^{-3}+2\cdot10^{-4}+.... B=10,A=2 =0.4142.....=4101+1102+4103+2104+....

当我们值保留3位小数位数时

B = 10 , A = 2 = 0.4142..... = 4 ⋅ 1 0 − 1 + 1 ⋅ 1 0 − 2 + 4 ⋅ 1 0 − 3 B=10,A=\sqrt{2}=0.4142.....=4\cdot10^{-1}+1\cdot10^{-2}+4\cdot10^{-3} B=10,A=2 =0.4142.....=4101+1102+4103

3称为比特精度。

代码实现时, B = 2 B=2 B=2,比特精度取64或32。 t j ∈ { 0 , 1 } t_j\in \{0,1\} tj{0,1}。具体见一下篇文章代码介绍。

下面定义新的结构 T q = 1 q Z / Z T_q=\frac{1}{q}\mathbb{Z}/\mathbb{Z} Tq=q1Z/Z \sqsubset T:$
\phi$是比特精度
{ i q ( m o d 1 ) ∣ i ∈ Z } = { 0 , 1 q , . . . , q − 1 q } , q = 2 ϕ \{\frac{i}{q}(mod~1)|i\in \mathbb{Z}\}=\{0,\frac{1}{q},...,\frac{q-1}{q}\},q=2^{\phi} {qi(mod 1)iZ}={0,q1,...,qq1},q=2ϕ
T q ⊏ T T_q \sqsubset T TqT称为离散Torus

离散Torus实际使用结构

给定两个元素 t = a q , u = b q ∈ T q t=\frac{a}{q},u=\frac{b}{q}\in T_q t=qa,u=qbTq.如果 v = t + c = c q ∈ T q v=t+c=\frac{c}{q}\in T_q v=t+c=qcTq,那么有 c = a + b ( m o d q ) c=a+b(mod~q) c=a+b(mod q).同样的对于 k ∈ Z k\in\mathbb{Z} kZ, k t = d q ∈ T q kt=\frac{d}{q}\in T_q kt=qdTq,那么有 d = k a ( m o d q ) d=ka(mod~q) d=ka(mod q)

T q T_q Tq上的运算被转换为模 q q q运算!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/49431.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

sqlalchemy使用mysql的json_extract函数查询JSON字段

sqlalchemy使用mysql的json_extract函数查询JSON字段 在SQLAlchemy中,如果你想要在MySQL中存储JSON字段,并且进行查询操作,可以按照以下步骤进行设置和查询: 1. 创建表格 首先,创建一个表格来存储包含JSON字段的数据。假设我们有一个名为 users 的表格,其中有一个名为…

springboot校园车辆管理系统-计算机毕业设计源码63557

校园车辆管理系统 摘 要 校园车辆管理系统是当前高校校园管理中的一个重要方面,其有效管理和调度对于提升校园的运行效率和管理水平至关重要。本论文基于Spring Boot框架开发了一套校园车辆管理系统,系统主要包括用户和管理员两大角色,涵盖…

Windows图形界面(GUI)-MFC-C/C++ - MFC绘图

公开视频 -> 链接点击跳转公开课程博客首页 -> ​​​链接点击跳转博客主页 目录 MFC绘图 绘图基础 CPaintDC 实例代码 MFC绘图 绘图基础 设备上下文(Device Context, DC): 设备上下文是一个Windows GDI(图形设备接口&#xff09…

Sprint Boot 2 核心功能(二)

数据访问 1、SQL 1.1、数据源的自动配置-HiKariDataSource 1.1.1、导入JDBC场景 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jdbc</artifactId> </dependency>数据库驱动&#xff1…

什么是湖仓一体?湖仓一体解决了什么问题?

目录 一、数据仓库&数据湖&湖仓一体概念辨析 1.数据仓库&#xff08;Data Warehouse&#xff09; 2.数据湖&#xff08;Data Lake&#xff09; 3.湖仓一体&#xff08;Lakehouse&#xff09; 二、湖仓一体的优点 三、湖仓一体要解决什么问题? 四、结语 随着当前大数据…

VScode 自定义插件安装目录

VScode 自定义插件安装目录 0 原位置和已扩展内容查询&#xff08;可跳过&#xff09; 查看原安装目录在computer中搜索extensions&#xff0c;找到extensions文件夹&#xff0c;目标extensions文件夹内会有之前安装的插件&#xff08;比如python&#xff09;&#xff0c;一般…

在spyder中使用arcgis pro的包

历时2天终于搞定了 目标&#xff1a;在anconda中新建一个arcpyPro环境&#xff0c;配置arcgispro3.0中的arcpy 一、安装arcgispro3.0 如果安装完之后打开arcgispro3.0闪退&#xff0c;就去修改注册表&#xff08;在另一台电脑安装arcgispro遇到过&#xff09; 安装成功后可…

Python3网络爬虫开发实战(1)爬虫基础

一、URL 基础 URL也就是网络资源地址&#xff0c;其满足如下格式规范 scheme://[username:password]hostname[:port][/path][;parameters][?query][#fragment] scheme&#xff1a;协议&#xff0c;常用的协议有 Http&#xff0c;https&#xff0c;ftp等等&#xff1b; user…

springboot怎么实现全局异常处理

在 Spring Boot 中实现全局异常处理可以通过定义一个控制器建议类&#xff08;ControllerAdvice&#xff09;来完成。这种机制允许你集中处理应用程序中所有控制器抛出的异常。下面是如何设置全局异常处理的基本步骤&#xff1a; 创建一个 ControllerAdvice 类&#xff1a; 创建…

如何借助生成式人工智能引领未来的科技狂潮

如何借助生成式人工智能引领未来的科技狂潮 1. 生成式AI的现状1.1 技术基础1.1.1 深度学习1.1.2 生成对抗网络&#xff08;GANs&#xff09;1.1.3 变分自编码器&#xff08;VAEs&#xff09; 1.2 主要应用1.2.1 语言模型1.2.2 图像生成1.2.3 音频与视频生成 2. 未来的发展趋势2…

简单编写一个获取项目所有pom依赖 的maven插件示例

简单编写一个获取项目所有pom依赖 的maven插件示例 设置Maven项目定义插件信息编写Mojo类处理传递性依赖配置插件描述符打包和安装插件在项目中使用插件运行插件 编写一个Maven插件来获取项目的所有POM依赖是一个相对复杂的任务&#xff0c;但基本的步骤是明确的。以下是一个简…

DNS服务器的搭建

目录 1、DNS服务器端软件 2、DNS服务器搭建 第⼀步&#xff1a;环境准备 第二步&#xff1a;web主机的搭建 第三步&#xff1a;服务器端配置DNS 第四步&#xff1a;配置DNS主机 第五步&#xff1a; 检查配置文件是否正确 3、搭建完成 回到客户端测试 1、DNS服务器端软…

VUE3——001(01)、开发环境配置(系统问题、软件环境变量配置)

叔可忍&#xff0c;婶不可忍&#xff01;开发环境乱七八糟&#xff0c;不是这个不对就是那个不对&#xff0c;连输入法正常功能也乱套&#xff08;四码唯一上屏、五码首选码上屏&#xff0c;统统用不了&#xff09;&#xff0c;终于决定重装系统了。系统还装两次&#xff08;……

Java语言程序设计基础篇_编程练习题*15.21(拖动点)

*15.21(拖动点) 绘制一个圆&#xff0c;在圆上有三个随机点。连接这些点构成一个三角形。显示三角形中的角度。使用鼠标沿着圆的边拖动点。拖动的时候&#xff0c;三角形以及角度动态地重新显示&#xff0c;如图15-30b 所示。计算三角形角度的公式参考程序清单4-1 可以参考上…

SD换脸reactor

目前安装最复杂的插件 ReActor&#xff0c; 安装吐了&#xff0c;幸亏自己是屌丝程序员&#xff0c;插件是通过python写的&#xff0c;通过给源代码输出一些信息&#xff0c;最终定位问题&#xff0c;安装成功了。看看他的换脸效果. 图生图 重绘幅度为0 reactor 设置五官图像…

【Django】在vscode中运行调试Django项目(命令及图形方式)

文章目录 命令方式图形方式默认8000端口设置自定义端口 命令方式 python manage.py runserver图形方式 默认8000端口 设置自定义端口

某某物联rabbitmqhttp二轮充电桩协议充电协议对接

对接方式概述&#xff1a; 1&#xff09;请求采用 http 协议方式&#xff0c;推送数据采用 amqp(默认 rabbitmq)点对点消息队 列方式。 2&#xff09;消息队列连接信息&#xff0c;需贵方完善。 1 hostIp&#xff1a; 2 virtualHost&#xff1a; 3 userName&#xff1a; 4 pass…

vue3+vite 实现动态引入某个文件夹下的组件 - glob-import的使用

<template><div class"user-content"><HeaderTitle title"用户详情"></HeaderTitle><div class"main-content"><div><UserForm /></div><div><TableList></TableList></d…

基于Python的帕金森病人步态分析

目录 摘要一、引言1.背景知识2.实验目的和意义 二、实验方法1.实验环境2.实验步骤2.1 生成信号&#xff0c;进行手动傅里叶变换以及内置 FFT 函数傅里叶变换2.2 进行手动傅里叶变换以及内置 FFT 函数傅里叶变换2.3 基于傅里叶变换的步态信息分析2.4 基于傅里叶变换的卷积分析 3…

vue3中Composition API写法 <script setup>标签中哪些可以不用导入即可使用?

在 Vue 3 中使用 <script setup> 时&#xff0c;确实有一些全局的 API 和宏可以直接使用&#xff0c;而不需要显式地从 vue 包中导入它们。这是因为 <script setup> 是专门为了提供更简洁的组件编写方式而设计的&#xff0c;它内部利用了编译时的语法糖。 以下是在…