Linux vmi284606.contaboserver.net 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
Apache/2.4.57 (Ubuntu)
: 167.86.127.34 | : 216.73.217.31
Cant Read [ /etc/named.conf ]
7.2.24-0ubuntu0.18.04.17
root
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
local /
go /
src /
math /
big /
[ HOME SHELL ]
Name
Size
Permission
Action
accuracy_string.go
414
B
-rw-r--r--
arith.go
5.68
KB
-rw-r--r--
arith_386.s
4.67
KB
-rw-r--r--
arith_amd64.go
277
B
-rw-r--r--
arith_amd64.s
9.71
KB
-rw-r--r--
arith_arm.s
4.47
KB
-rw-r--r--
arith_arm64.s
9.94
KB
-rw-r--r--
arith_decl.go
707
B
-rw-r--r--
arith_decl_pure.go
1.24
KB
-rw-r--r--
arith_decl_s390x.go
791
B
-rw-r--r--
arith_mips64x.s
917
B
-rw-r--r--
arith_mipsx.s
913
B
-rw-r--r--
arith_ppc64x.s
12.62
KB
-rw-r--r--
arith_s390x.s
29.12
KB
-rw-r--r--
arith_s390x_test.go
1014
B
-rw-r--r--
arith_test.go
12.29
KB
-rw-r--r--
arith_wasm.s
757
B
-rw-r--r--
bits_test.go
5.07
KB
-rw-r--r--
calibrate_test.go
4.63
KB
-rw-r--r--
decimal.go
6.52
KB
-rw-r--r--
decimal_test.go
3.33
KB
-rw-r--r--
doc.go
3.79
KB
-rw-r--r--
example_rat_test.go
1.68
KB
-rw-r--r--
example_test.go
3.94
KB
-rw-r--r--
float.go
44.14
KB
-rw-r--r--
float_test.go
51.94
KB
-rw-r--r--
floatconv.go
8.36
KB
-rw-r--r--
floatconv_test.go
24.28
KB
-rw-r--r--
floatexample_test.go
3.63
KB
-rw-r--r--
floatmarsh.go
3.34
KB
-rw-r--r--
floatmarsh_test.go
3.64
KB
-rw-r--r--
ftoa.go
13.55
KB
-rw-r--r--
gcd_test.go
2.16
KB
-rw-r--r--
hilbert_test.go
2.88
KB
-rw-r--r--
int.go
29.56
KB
-rw-r--r--
int_test.go
51.93
KB
-rw-r--r--
intconv.go
6.68
KB
-rw-r--r--
intconv_test.go
10.01
KB
-rw-r--r--
intmarsh.go
2.09
KB
-rw-r--r--
intmarsh_test.go
2.8
KB
-rw-r--r--
nat.go
33.76
KB
-rw-r--r--
nat_test.go
18.87
KB
-rw-r--r--
natconv.go
14.57
KB
-rw-r--r--
natconv_test.go
16.85
KB
-rw-r--r--
prime.go
10.34
KB
-rw-r--r--
prime_test.go
7.1
KB
-rw-r--r--
rat.go
13.49
KB
-rw-r--r--
rat_test.go
18.54
KB
-rw-r--r--
ratconv.go
9.49
KB
-rw-r--r--
ratconv_test.go
14.96
KB
-rw-r--r--
ratmarsh.go
1.95
KB
-rw-r--r--
ratmarsh_test.go
3.04
KB
-rw-r--r--
roundingmode_string.go
501
B
-rw-r--r--
sqrt.go
3.59
KB
-rw-r--r--
sqrt_test.go
4.81
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : hilbert_test.go
// Copyright 2009 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. // A little test program and benchmark for rational arithmetics. // Computes a Hilbert matrix, its inverse, multiplies them // and verifies that the product is the identity matrix. package big import ( "fmt" "testing" ) type matrix struct { n, m int a []*Rat } func (a *matrix) at(i, j int) *Rat { if !(0 <= i && i < a.n && 0 <= j && j < a.m) { panic("index out of range") } return a.a[i*a.m+j] } func (a *matrix) set(i, j int, x *Rat) { if !(0 <= i && i < a.n && 0 <= j && j < a.m) { panic("index out of range") } a.a[i*a.m+j] = x } func newMatrix(n, m int) *matrix { if !(0 <= n && 0 <= m) { panic("illegal matrix") } a := new(matrix) a.n = n a.m = m a.a = make([]*Rat, n*m) return a } func newUnit(n int) *matrix { a := newMatrix(n, n) for i := 0; i < n; i++ { for j := 0; j < n; j++ { x := NewRat(0, 1) if i == j { x.SetInt64(1) } a.set(i, j, x) } } return a } func newHilbert(n int) *matrix { a := newMatrix(n, n) for i := 0; i < n; i++ { for j := 0; j < n; j++ { a.set(i, j, NewRat(1, int64(i+j+1))) } } return a } func newInverseHilbert(n int) *matrix { a := newMatrix(n, n) for i := 0; i < n; i++ { for j := 0; j < n; j++ { x1 := new(Rat).SetInt64(int64(i + j + 1)) x2 := new(Rat).SetInt(new(Int).Binomial(int64(n+i), int64(n-j-1))) x3 := new(Rat).SetInt(new(Int).Binomial(int64(n+j), int64(n-i-1))) x4 := new(Rat).SetInt(new(Int).Binomial(int64(i+j), int64(i))) x1.Mul(x1, x2) x1.Mul(x1, x3) x1.Mul(x1, x4) x1.Mul(x1, x4) if (i+j)&1 != 0 { x1.Neg(x1) } a.set(i, j, x1) } } return a } func (a *matrix) mul(b *matrix) *matrix { if a.m != b.n { panic("illegal matrix multiply") } c := newMatrix(a.n, b.m) for i := 0; i < c.n; i++ { for j := 0; j < c.m; j++ { x := NewRat(0, 1) for k := 0; k < a.m; k++ { x.Add(x, new(Rat).Mul(a.at(i, k), b.at(k, j))) } c.set(i, j, x) } } return c } func (a *matrix) eql(b *matrix) bool { if a.n != b.n || a.m != b.m { return false } for i := 0; i < a.n; i++ { for j := 0; j < a.m; j++ { if a.at(i, j).Cmp(b.at(i, j)) != 0 { return false } } } return true } func (a *matrix) String() string { s := "" for i := 0; i < a.n; i++ { for j := 0; j < a.m; j++ { s += fmt.Sprintf("\t%s", a.at(i, j)) } s += "\n" } return s } func doHilbert(t *testing.T, n int) { a := newHilbert(n) b := newInverseHilbert(n) I := newUnit(n) ab := a.mul(b) if !ab.eql(I) { if t == nil { panic("Hilbert failed") } t.Errorf("a = %s\n", a) t.Errorf("b = %s\n", b) t.Errorf("a*b = %s\n", ab) t.Errorf("I = %s\n", I) } } func TestHilbert(t *testing.T) { doHilbert(t, 10) } func BenchmarkHilbert(b *testing.B) { for i := 0; i < b.N; i++ { doHilbert(nil, 10) } }
Close