Esistono algoritmi di compressione basati su PI?


11

Quello che sappiamo è che π è infinito e molto probabilmente contiene ogni possibile stringa di cifre finita ( sequenza disgiuntiva ).

Ho visto di recente un prototipo di πfs che presuppone che ogni file che hai creato (o chiunque altro) o che creerai, è già lì, quindi si tratta di estrarlo. C'è anche piFile che può convertire i tuoi file in pi metadati.

C'è già BBP tipo formula (come parte della matematica sperimentale) che consente di calcolare n esima cifra binaria di fig. Quindi, memorizzando la posizione del nostro inizio e la lunghezza dei dati, possiamo teoricamente estrarre i dati di nostro interesse. Vi sono alcuni argomenti a sostegno del fatto che i nostri metadati (ad esempio l'offset ai nostri dati) potrebbero essere più grandi dei dati estratti. I simboli della matrice e π possono essere codificati in base-256 per renderlo più efficiente (vedi lo scherzo ).

Sulla base di quanto sopra, la mia domanda principale è:

  • Esistono algoritmi di compressione basati su PI?

In caso contrario, ha senso? O c'erano delle ricerche in quella zona?

O forse π non è quello giusto, quindi che dire della costante di Eulero o di Tau (τ)? Farebbe qualche differenza?


cercare parole sporche in numeri è MODO più divertente che cercarle nel dizionario!  ASS: posizione pi 590.725 (codifica ASCII).  BUTT: posizione 177.031.174.  BOOB: posizione 32.355.500.  8 == D è nella posizione 158.907.339.  POSSO SEMPRE DIRE: QUANTO EROTICO

Crediti immagine: Dinosaur Comics


Guarda anche:


15
Caro T-rex, la tua conclusione nel frame 2 non segue in alcun modo dall'affermazione nel frame 1. Nessuna meraviglia che la tua specie si sia estinta. Tuo,
David Richerby,

2
in realtà è un problema aperto e / o probabilmente indecidibile per determinare se una lunga serie di cifre appare in in generale .... suggerisci di studiare la teoria della complessità diπ
kolmogorov

1
Sei sicuro, per ogni possibile bit (dati), potresti principalmente trovare l'istanza sul pi, entro posizione (metadati)? Deve essere, per essere chiamato "compressione". 2 NN2N
Константин Ван,

Risposte:


17

16π12821282128

π

π


14

Basato sulla risposta di Yuval, con una spiegazione leggermente diversa e un esempio per aiutare a chiarire il problema.

Teoria

16128

  1. π
  2. 128

2128

  • una ricerca profonda del modello di bit; e
  • 2128

ππ

Vedi anche, entropia dell'informazione .

Esempio

log2(938933556)29.830

π597,507,393log2(597507393)29.230

Forse possiamo tagliare i numeri?

  • 1,124
  • 1,216
  • 11,727

36

  • 15,312,393
  • 8

2730

N


2

Esistono algoritmi di compressione basati su PI?

sì, https://github.com/divinity76/pi_compression

ha senso?

no, la memorizzazione degli offset in genere richiede più spazio su disco di quello che risparmi, almeno con l'implementazione sopra (3 cose notevoli su di esso che potrebbero essere migliorate, considera solo i primi 2 ^ 32 byte di una rappresentazione binaria di pi, e utilizza una quantità eccessiva di bit per memorizzare il numero di byte corrispondenti per offset, vale a dire 8 bit mentre il test mostra che 3 bit sarebbero ottimali e considera solo corrispondenze di byte completi, quindi se c'è una corrispondenza di 15 bit da qualche parte, lo farà essere considerato solo come una corrispondenza a 8 bit .. anche se gli ultimi 4 bit di un byte corrispondono ma non il bit n. 3 e i primi 4 bit del byte successivo corrispondono ma non il bit n. 5, non viene considerato come una corrispondenza in tutti)

O c'erano delle ricerche in quella zona?

uhm certo, ecco perché ho scritto l'implementazione di cui sopra, e i risultati sembrano essere che entro i primi 4 GB di pi, probabilmente troverai 4 byte corrispondenti di ... praticamente qualsiasi cosa, il che è molto difficile, se non impossibile, per ottenere una compressione da, ho fallito almeno. (ma la mia implementazione non è ottimale, come spiegato sopra) - anche la compressione è molto lenta, ma la mia implementazione è a thread singolo, ma l'algoritmo consente il multithreading se qualcuno potrebbe essere scritto scrivendo il codice, il che consentirebbe di ridimensionare le prestazioni con il numero di core disponibili.

la decompressione è molto veloce, però.


0

Esistono algoritmi di compressione basati su PI?

ππ

XπX

ππ

anche se una costante matematica avesse la straordinaria proprietà di "contenere tutte le stringhe", un semplice argomento è che l'algoritmo di compressione impiegherebbe "troppo tempo" alla ricerca della posizione della stringa e che descriverne la posizione richiederebbe spesso un lunga (er) stringa di cifre.

vedere anche / contrast / provare a riconciliarsi con una domanda simile votata come può essere decidibile se pi contiene una sequenza di cifre . (cs.se) (suggerimento: il titolo può essere considerato in qualche modo fuorviante)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.