Ancora una sequenza...

Crashy1
mi potete dire l'equazione per determinare se un numero appartiene o no a una di queste sequenze?

http://www.research.att.com/~njas/sequences/A067793
http://www.research.att.com/~njas/sequences/A038509

grazie :wink:

Risposte
adaBTTLS1
per la prima non sono certa, ma penso ti convenga cercare la funzione $phi$ di Eulero.
per la seconda, che cosa significa che il più piccolo fattore primo è maggiore o uguale a 5 ? pensaci un attimo ...

Crashy1
"adaBTTLS":
per la prima non sono certa, ma penso ti convenga cercare la funzione $phi$ di Eulero.
per la seconda, che cosa significa che il più piccolo fattore primo è maggiore o uguale a 5 ? pensaci un attimo ...


che è divisibile per un numero minore o uguale a 5?

no perche 25, 35, 49.... gia 49 non è divisibile per 2,3,4 o 5....

adaBTTLS1
no, che non è divisibile per alcun numero primo minore di 5 ... quindi non deve essere né pari né multiplo di 3 ...

Crashy1
"adaBTTLS":
no, che non è divisibile per alcun numero primo minore di 5 ... quindi non deve essere né pari né multiplo di 3 ...

mmm portato in codice python quindi


stop_at = 100

def functl(x):
	if x % 3 == 0 or x % 2 == 0:
		return False
	return True

for x in range(0,stop_at):
	if functl(x):
		print x,",",



dovrebbe restituire la sequenza invece da

1 , 5 , 7 , 11 , 13 , 17 , 19 , 23 , 25 , 29 , 31 , 35 , 37 , 41 , 43 , 47 , 49 , 53 , 55 , 59 , 61 , 65 , 67 , 71 , 73 , 77 , 79 , 83 , 85 , 89 , 91 , 95 , 97 


al posto di



25, 35, 49, 55, 65, 77, 85


dove sbaglio??

adaBTTLS1
scherzi?
a parte 1, che penso sia sottinteso che non ci appartenga (la traduzione letterale dall'inglese non so come vada interpretata),
5,7,11,13,17,19... sono numeri primi.
si richiedono solo numeri non primi, che non siano divisibili per numeri primi minori di cinque (cioè né pari (divisibili per 2) né multipli di 3.
spero sia chiaro. prova a fare un confronto tra le due successioni, e vedi se la prima contiene la seconda ed ha in più solo 1 e i numeri primi...

Crashy1
"adaBTTLS":
scherzi?
a parte 1, che penso sia sottinteso che non ci appartenga (la traduzione letterale dall'inglese non so come vada interpretata),
5,7,11,13,17,19... sono numeri primi.
si richiedono solo numeri non primi, che non siano divisibili per numeri primi minori di cinque (cioè né pari (divisibili per 2) né multipli di 3.
spero sia chiaro. prova a fare un confronto tra le due successioni, e vedi se la prima contiene la seconda ed ha in più solo 1 e i numeri primi...


scusa avevo letto male...

la mia situazione è questa...

ho una lista di numeri primi "contaminata" da i numeri che appartengono a quella sequenza stavo cercando un modo per "pulirla"

e ho cercato la sequenza da eliminare ( http://www.research.att.com/~njas/seque ... &go=Search )

ma per le prime 2 il numero non deve essere primo e la 3 implica l'uso di $phi(x)$ ... mi sa che non ce la farò mai....

adaBTTLS1
scusa, ma non ho capito il problema. ora hai richiamato la sequenza di cui abbiamo parlato nell'altro topic.
io qui ho risposto a questa e basta: http://www.research.att.com/~njas/sequences/A038509
non so che cosa intendi trovare, se psrli di <>

Crashy1
"adaBTTLS":
scusa, ma non ho capito il problema. ora hai richiamato la sequenza di cui abbiamo parlato nell'altro topic.
io qui ho risposto a questa e basta: http://www.research.att.com/~njas/sequences/A038509
non so che cosa intendi trovare, se psrli di <>


ho un file con una lista di numeri enorme voglio prendere solo quelli primi senza usare il metodo di controllo classico (ci metterei troppo) quindi ho notato che i numeri non primi nella mia lista seguono quelle sequenze quindi forse potrei eliminarli controllando se ogni numero della mia sequenza appartenga a una di quelle ecco i primi 100 numeri della mia sequenza

5
7
11
13
17
19
23
25 *
29
31
35 *
37
41
43
47
49 *
53
55 *
59
61
65 *
67
71
73
77 *
79
83
85 *
89
91 *
95 *
97
101


devo levare quelli con *

spero di essere stato chiaro questa volta :wink:

adaBTTLS1
quindi hai di base i numeri che non sono né pari né multipli di tre... i non primi sono quelli dell'ultima sequenza, quella di cui ho parlato nell'ultimo post.
allora è perfettamente funzionante la cosa: hai da sottrarre una sequenza interamente contenuta nella tua lista di partenza, e rimarrebbero solo i numeri primi a parte 2 e 3.
e le altre sequenze allora non ti servono?

Crashy1
"adaBTTLS":
quindi hai di base i numeri che non sono né pari né multipli di tre... i non primi sono quelli dell'ultima sequenza, quella di cui ho parlato nell'ultimo post.
allora è perfettamente funzionante la cosa: hai da sottrarre una sequenza interamente contenuta nella tua lista di partenza, e rimarrebbero solo i numeri primi a parte 2 e 3.
e le altre sequenze allora non ti servono?


nell'altro 3d hai detto che

$ (k⋅(k-1)⋅(k-2)) / 6 $

andava egualiata a 1 quindi

$(k⋅(k-1)⋅(k-2)) / 6 = 1$

in python diventa

def funct(k):
	p1 = ((k*(k-1)*(k-2)) / 6)
	if p1 == 1:
		return True
	return False



ma questa è verificata, per esempio, da 1 a 100 solo per 3.

>>> def funct(k):
...     p1 = ((k*(k-1)*(k-2)) / 6)
...     if p1 == 1:
...             return True
...     return False
...     
... 
>>> for i in range(0,100):
...     if funct(i):
...             print i
... 
3
>>> 


non per 25, 35, 49, 55, 65, 77, 85, 91, 95 come dovrebbe essere e e poi la desc dice " Nonprime numbers k such......" ma i miei numeri sono tutti primi tranne quelli che devo levare....

adaBTTLS1
la riprendo ....
"adaBTTLS":
benvenuto/a nel forum.

se intendi, preso un qualsiasi numero k non primo, verificare se appartiene all'insieme, allora, considerando che $((k+p),(k))=((k+p),(p))$ e si prende $p=3$, basta verificare che

$(k*(k-1)*(k-2))/6 -= 1 (mod k)$

spero di essere stata utile. se intendevi chiedere altro, fammi sapere. ciao.


era questa che andava uguagliata ad 1:
"Crashy":
ok ho guardato su wikipedia dice che a = b (mod n) se a - b è un multiplo di n quindi

$(k*(k-1)*(k-2))/6 - € mk$

dove mk è l'insieme dei multipli di k

giusto???


$(k*(k-1)*(k-2))/6 - mk = 1$

prova a ripartire a qui ...

Crashy1
"adaBTTLS":
la riprendo ....
[quote="adaBTTLS"]benvenuto/a nel forum.

se intendi, preso un qualsiasi numero k non primo, verificare se appartiene all'insieme, allora, considerando che $((k+p),(k))=((k+p),(p))$ e si prende $p=3$, basta verificare che

$(k*(k-1)*(k-2))/6 -= 1 (mod k)$

spero di essere stata utile. se intendevi chiedere altro, fammi sapere. ciao.


era questa che andava uguagliata ad 1:
"Crashy":
ok ho guardato su wikipedia dice che a = b (mod n) se a - b è un multiplo di n quindi

$(k*(k-1)*(k-2))/6 - € mk$

dove mk è l'insieme dei multipli di k

giusto???


$(k*(k-1)*(k-2))/6 - mk = 1$

prova a ripartire a qui ...[/quote]


Quindi se

$(k*(k-1)*(k-2))/6 - mk = 1$

allora

$(k*(k-1)*(k-2))/6 - 1 = mk$

quindi basta dire

$((k*(k-1)*(k-2))/6 - 1) / k € N$

perche essendo $(k*(k-1)*(k-2))/6 - 1 $ un multiplo di k deve essere divisibile per k...

adaBTTLS1
mettila come vuoi... sono tutte forme equivalenti... a parte il fatto che se vuoi verificarlo con strumento informatico potresti avere problemi con k presente in entrambi i membri.

Crashy1
"adaBTTLS":
mettila come vuoi... sono tutte forme equivalenti... a parte il fatto che se vuoi verificarlo con strumento informatico potresti avere problemi con k presente in entrambi i membri.


e infatti in python è verificato solo per 1 e per 3..

>>> def funct(k):
...     p1 = ((k*(k-1)*(k-2)) / 6) -1 
...     if p1 % k == 0:
...             return True
...     return False
... 
>>> for i in range(1,1000):
...     if funct(i):
...             print i
... 
1
3
>>> 

adaBTTLS1
"adaBTTLS":
ho sbagliato a scrivere, perché si parte da $k+p=k+3$ a scendere e non da $k$ ... !

correggo:
$((k+1)*(k+2)*(k+3))/6 -= 1 (mod k)$

Crashy1
"adaBTTLS":
[quote="adaBTTLS"]ho sbagliato a scrivere, perché si parte da $k+p=k+3$ a scendere e non da $k$ ... !

correggo:
$((k+1)*(k+2)*(k+3))/6 -= 1 (mod k)$
[/quote]

ah scusa se ti ho fatto ammattire per niente ma il la descrizone delle sequenza dice " Composite numbers with smallest prime factor >= 5. " e noi abbiamo numeri primi e questi "intrusi" :cry:

l'ultima speranza ormai è la sequenza A054550 il quale testo dice

Union of 4 AP's: 25+30n, 35+30n, 49+42n, 77+42n. 


che dici ci si puo fare anche con questa?

adaBTTLS1
secondo me quest'ultima è molto parziale, quindi non mi fiderei.
secondo me, se ho capito che cosa cerchi, come ti ho detto già in precedenza, devi aggiungere 2 e 3 e togliere tutti quelli della terza sequenza citata, cioè
" Composite numbers with smallest prime factor >= 5. "

Crashy1
"adaBTTLS":
secondo me quest'ultima è molto parziale, quindi non mi fiderei.
secondo me, se ho capito che cosa cerchi, come ti ho detto già in precedenza, devi aggiungere 2 e 3 e togliere tutti quelli della terza sequenza citata, cioè
" Composite numbers with smallest prime factor >= 5. "


e come faccio a sapere se un numero è Composite ? dovrei fare un ciclo con tutti i possibili divisori e questo è impossibile per la mole di dati che ho...

adaBTTLS1
allora non ho capito assolutamente che cosa vorresti fare...

Crashy1
"adaBTTLS":
allora non ho capito assolutamente che cosa vorresti fare...


ho una lista di quasi tutti numeri primi,tra questi ci sono quelli delle prime 3 sequenze in questa ricerca http://www.research.att.com/~njas/seque ... &go=Search come faccio a determinare se un numero della mia lista, quindi un possibile primo, appartiene a una di quelle sequenze? in modo da ottenere una lista composta da solo numeri primi
faccio tutto questo rigiro perche si tratta di una mole enorme di dati che non posso verificare provando tutti i divisori possibili di un numero e verificare quindi se è primo

sono stato chiaro questa volta?

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.