使用 Travis CI 自动发布

travis setup releases --force

travis setup releases
Username: galaster
Password for galaster: ***********
File to Upload: asdfghjkl(瞎填)
Deploy only from GalAster/Deus? |yes| yes
Encrypt API key? |yes| yes

最后一步的区别在于如果 yes 那么, 如果 no 那么写

Anaconda 安装教程

安装 Anaconda

到清华镜像站下载最新 Anaconda 安装包, Date 倒序排列即可.

https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

然后全局安装, 第二个最新 Python 勾上

配置 Anaconda

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
conda create -n py2 python=2.7
conda create -n py3 python=3.6

接下来就没 bash 什么事了, 切换到新搞的 python3 环境, 然后我看看, jupyterlab, spyder 和 vscode 走起, 其他不要了.

打开 spyder 开干!

Mathematica与py&js快乐的玩耍

title: 让 mathematica 与 py & js 快乐的玩耍


安装 ZeroMQ

Win 用户

安装最新的 python, nodejs 以及 git

新建一个 sh 文件 i sec.sh , 里面写

#!/usr/bin/env bash
conda install pyzmq -yes || python -m pip install zmq
cd ~ && npm install zeromq && mv node_modules .node_modules
echo "Ctrl + C 退出" && sleep 86400

双击运行即可, 若跳警告, 统统无视即可

Gayhub 加V认证

任何社交网站都有大V, 那全球最大的同性交友网站自然也有咯.

大V当然要有独特的标记, Gayhub的标记是什么样的呢?

Warning!!!

首先警告一下这个东西超级麻烦, 以后每次提交都要输入 commit 密码

这还没完, 而且如果你使用 IDE 麻烦会平方.

另外这个无法补签... 你全绿漏一天你明年再接再厉吧...

Rebase 之后还丢失认证, 除非使用专用的变基技巧...

如果你确定你不怕麻烦就是要加V的话那我们开始吧!

史上最贱数学题(番外)

这个题其实相当显然, 因为:

$$\begin{aligned} f=&\frac{a}{b+c}+\frac{b}{a+c}+\frac{c}{a+b} \\ =&\frac{3}{2} + \frac{1}{2} \left(\frac{(a-b)^2}{(a+c)(b+c)}+\frac{(a-c)^2}{(a+b)(b+c)}+\frac{(b-c)^2}{(a+b)(a+c)}\right)\\ \geq &\frac32\qquad \mathtt{quiet\ easily\ done!} \end{aligned}$$

角豆麻袋, 什么情况, 不要使用禁咒 $\cdot$ 陈计配凑, 好吗!

你能不能按照高考考纲以及高考给分要求来啊?

说的是呢, 其实也不是很难, 换个元更清晰.

解: 设 $a+b:=x,b+c:=y,c+a:=z$ .

$$\begin{aligned} 2f=&2 \left(\dfrac{a}{b+c}+\dfrac{b}{c+a}+\dfrac{c}{a+b}\right)\\ =&\dfrac{a+a}{y}+\dfrac{b+b}{z}+\dfrac{c+c}{x}\\ =&\dfrac{z-c+x-b}{y}+\dfrac{x-a+y-c}{z}+\dfrac{y-b+z-a}{x}\\ =&\dfrac{z+x-y}{y}+\dfrac{x+y-z}{z}+\dfrac{y+z-x}{x}\\ =&\underbrace{\dfrac{x}{y}+\dfrac{y}{x}}_{\geq 2}+\underbrace{\dfrac{y}{z}+\dfrac{z}{y}}_{\geq 2}+\underbrace{\dfrac{z}{x}+\dfrac{x}{z}}_{\geq 2}-3 \\ \geq &3 \qquad\mathtt{Q.E.D} \end{aligned}$$

答: 由是观之, $\dfrac{a}{b+c}+\dfrac{b}{c+a}+\dfrac{c}{a+b}\geq \dfrac32$ .

很自然的想到, 是不是能有:

$$\sum_{i=1}^{n} \frac{x_i}{x_{i+1}+x_{i+2}} \geq \frac{n}{2}$$

n=3是个很有名的情形, Nesbitt's_inequality,有十几种证明, $n=4$ 还可以通过观察法凑配, $n=5,6$ 要借助凸性构造Jensen不等式, 接下来难度开始爆炸, 各种玄妙的操作...

最后.......


很不幸, 这不是恒成立的, 当n=14时崩坏了...

Troesch 给出了一个反例:

$$x_{14}=(0,42,2,42,4,41,5,39,4,38,2,38,0,40)$$

$$\sum_{cyc}^{x_{14}}\frac{x_i}{x_{i+1}+x_{i+2}}=\frac{202566829}{28938140}\approx6.999999<\frac{14}{2}$$

var={0,42,2,42,4,41,5,39,4,38,2,38,0,40};
#1/(#2+#3)&@@@Partition[var,3,1,1]//Total

哇, 有毒啊, 构造大丈夫....
事实上这个不等式只对 $n=3\sim14,15,17,19,21,23$ 成立.

Shapiro inequality is an inequality proposed by H. Shapiro in 1954.

借助一些分析学手段发现可以打个补丁修正这个不等式:

$$\sum_{i=1}^{n} \frac{x_i}{x_{i+1}+x_{i+2}} \geq \frac{\gamma}{2}n$$

$\gamma$$y_1(x)=e^{-x}$$y_2(x)=\dfrac{2}{e^{x/2}+e^x}$ 的函数凸包的根...

FunctionConvexHull
The convex hull of two or more functions is the largest function that is concave from above and does not exceed the given functions.

我也不知道函数凸包是什么鬼, 描述和下面的计算完全对不上......

具体来说就是下列方程的实根:

$$x+\frac{1}{2 e^{x/2}+1}=\log \left(\frac{4 e^x}{2 e^{x/2}+1}\cosh ^2\left(\frac{x}{4}\right)\right)$$

就一个, 代入下面这个式子里...

$$\gamma=\frac{1}{4} \left(2 e^{-\frac{x}{2}} (x+1)+e^{-x} (x+2)\right) \text{sech}^2\left(\frac{x}{4}\right)$$

eq=1/(1 + 2*E^(x/2)) + x == Log[(4*E^x*Cosh[x/4]^2)/(1 + 2*E^(x/2))];
r=FindRoot[eq, {x, -1},WorkingPrecision->50];
(1/4)*Sech[x/4]^2*((2 + x)/E^x + (2*(1 + x))/E^(x/2)) /.r

>>0.98913363444699305224349030826633798138034809804418

http://www.turgor.ru/lktg/2010/5/5-1en.pdf
https://en.wikipedia.org/wiki/Shapiro_inequality
http://mathworld.wolfram.com/ShapirosCyclicSumConstant.html
https://en.wikipedia.org/wiki/Nesbitt%27s_inequality

史上最贱数学题

要求方程正整数解:

$$\frac{a}{b+c} + \frac{b}{c+a} + \frac{c}{a+b} = n$$

那就先把它乘开

$$a^3 + b^3 + c^3 + abc - (n-1)(a+b)(b+c)(c+a) = 0$$

呃, 好像还是不会做?

椭圆曲线

求解某个方程的整数解或是正整数解, 这是个古老而又困难的数论问题, 这类问题被称为丢番图方程.

通过某种巧妙地构造发现, 作代换

$$\begin{cases} x=-\dfrac{4 (n+3) (a+b+2 c)}{n (a+b)+2 a+b-c}\\ y=\dfrac{4 \left(2 n^2+11 n+15\right) (a-b)}{n (a+b)+2 a+b-c} \end{cases}$$

原式可以转换为

$$y^2 = x \bigl(x^2 + (4n(n+3)-3)x + 32(n+3)\bigr) =: x(x^2 + Ax + B)$$

于是问题划归为求解椭圆曲线方程的解, 消掉一个自由度, 求解整数解变求解有理数解.

$$y^2=x \left(x^2+109 x+224\right);\mathtt{where}\ x,y\in\mathbb{Q/\{0\}}$$

椭圆曲线上的所有有理点都能通过有限的几个生成元得到

椭圆曲线的生成元(类似线性代数的基底)个数取决于椭圆曲线的阶(类似线性代数的维度).

椭圆曲线加法

椭圆曲线上的加法定义为

因为椭圆曲线的加法几乎是随机的, 所以期望某次相加后符合要求

椭圆曲线乘法

椭圆曲线上的乘法当然可以通过慢慢加得到, 但是这样是线性复杂度, 比较好的方案是二进制分解, 用类似快速幂的方法计算, 这样能降低到对数复杂度.

$$9=1001_2=8+P;8=4+4;4=2+2;2=P+P$$

这样一共是4次运算, 乘数大的时候非常划算.

但是你要是要求其逆运算, 求其对数, 这个就非常困难了, 你只能线性的一个一个去加看看符不符合, 这几乎是不可能找到原来的乘数的.

这是椭圆曲线加密(ECC)的数学基础, 非常的靠谱. 当然前提是没有数学武器降维打击, 有多种高深的数学工具可以或多或少加速这个过程.

密码学界也在着手更加高级(艰深)的加密手段, 我能做的只有信任... 毕竟...反正我也看不懂了...