GNU faktör komutu için pratik bir kullanım var mı?


17

İçinden bakıldığında GNU coreutils , ben benekli factorDaha önce hiç fark ettiğini, komutu.

Kılavuz sayfasını okuma:

Belirtilen her bir tamsayı NUMBER'in asal çarpanlarını yazdırın. Komut satırında hiçbiri belirtilmemişse, bunları standart girişten okuyun.

Pratik bir kullanım var mı factor, yoksa sadece bir gösteri / oyuncak paketi mi?

Yanıtlar:


17

Wikipedia, "Faktör (Unix)" ile ilginç bir bakış:

faktörü ilk olarak 1974'te 5. baskı Research Unix'te "kullanıcı tarafından korunan" bir yardımcı program olarak ortaya çıktı (kılavuzun 6. bölümü). 1979'daki 7. baskıda, kılavuzun ana "komutlar" bölümüne (bölüm 1) taşındı. Oradan faktör yardımcı programı, ticari Unix'ler ve BSD dahil olmak üzere diğer tüm Unix varyantlarına kopyalandı. Unix'in bazı varyantlarında, ciddi bir faydadan çok bir "oyun" olarak sınıflandırılır ve bu nedenle bölüm 6'da belgelenir.

Bu nedenle, bazı kullanıcı (lar) asal faktörlerle oynamayı sevdi ve faktör yazdı - ve bir kez var olduğunda, bunu sonraki Unix sürümlerine komut olarak dahil etmemenin iyi bir nedeni yoktu. Dolayısıyla, faktörün "pratik kullanımları" pratikte neyi düşündüğünüze bağlı olabilir - asal sayı teorisindeyseniz, muhtemelen harika bir araç / oyun / her neyse.


6

En azından bir durumda, benim için factorbilinmeyen formatta büyük bir veri dosyasının analizinde yardımcı olduğunu biliyorum .

Bir dosyanın sabit uzunluk kayıtlarına sahip olduğundan şüpheleniyorsanız, dosya uzunluğunun ana faktörleri, gerçek kayıt uzunluğunu belirlemek için bir başlangıç ​​noktası sağlar.


4

Belirttiğiniz sayıyı elde etmek için hangi asal sayıların birlikte çoğaltılabileceğini söyleyecektir:

Örneğin 20 = 2 * 2 * 5

Yani,

> factor 20

Sen almak 20: 2 2 5çıktı olarak

Eğer sayı asal ise, örneğin 19 ise, 19sadece bir tane alırsınız .


Teşekkürler, bunu man sayfasından aldım. Bunu neden bir kabuk komut dosyasında veya benzerlerinde yapmak isteyeceğinizi merak ettim. İnsanlar ne sıklıkla asal köklere ihtiyaç duyarlar? Soruyu daha net olacak şekilde güncelledim.
Gavin Brock


2

Bu, bilimsel hesap makineleri ucuz, küçük ve bol olmadan UNIX'in ilk günlerinden kalma bir yardımcı program olabilir.

Orijinal UNIX geliştiricilerinin her şeyin yararlı bir şey yapabileceğini ve fon almaya devam etmesi gerektiğini göstermesine izin vermiş olabilir.


1
Tamamen hesaplamalı olduğu için Unix'in hiçbir özelliğini göstermez.
Stéphane Chazelas

2
Unix'in ilk günlerinde roffdizgici, Unix'in finansman gereksinimlerini karşılamak için geliştirildi.
Kusalananda

0

Asal sayılar kriptografide büyük rol oynar, ancak çok az şey bilmeme rağmen, büyük primerlerin ve benzerlerinin tanımlanmasında yararlı bulabileceklerini anlayabilirim.


5
factor, işaretsiz bir tam sayıya uyan sayılarla sınırlıdır. En iyi durum, bu 64 bittir (≤ 18,446,744,073,709,551,615) - ancak makul olarak kullanacağınız en küçük sayı, örneğin RSA 2048 bittir. IOW, Bu faktörün üstesinden gelebileceğinden çok daha büyük. Aslında o kadar büyük ki , bir yorumun maksimum uzunluğunu kaç kat daha büyük olduğunu yazıyor . Neredeyse 600 basamak uzunluğunda (örneğin kendiniz hesaplamak istiyorsanız bc
2¹⁹⁸⁴'dir

Yani bugün yararlı değil ama belki 35 yıl önce? Kriptografi o kadar yüksek entropiye sahip anahtarlar kullanıyor muydu? Sadece bunun olası bir nedeni olabileceğini düşündüm.
Drake Clarris

Faktör ise sayılı edebilirsiniz (Üzerinde uzun yıllar boyunca chugging olmadan) numarayı faktör, o zaman kriptografi işe yaramaz. Ayrıca, bahis faktörü nispeten yavaş bir algoritma kullanır ...
derobert

1
Kriptografi hakkında çok az şey olduğunu söyledim. haha
Drake Clarris

3
@derobert en azından makinemdeki versiyon (8.25) libgmp kullanıyor ve çok büyük sayıları hesaba katıyor:184467440737095516150000000000001: 19 37 227601536870423 1152893543912729
Viktor Dahl
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.