IMPLEMENTAÇÃO DO MÉTODO DE FATORAÇÃO DE INTEIROS CRIVO QUADRÁTICO

Documentos relacionados
ESTUDO DO MÉTODO DE FATORAÇÃO DE INTEIROS CRIVO QUADRÁTICO

CRIVO QUADRÁTICO: IMPLEMENTAÇÃO DA OBTENÇÃO DE UM CONJUNTO DE NÚMEROS COMPLETAMENTE FATORADOS SOBRE UMA BASE DE FATORES

Cálculo Numérico BCC760 Interpolação Polinomial

3 Algoritmos propostos

Experiência V (aulas 08 e 09) Curvas características

CRIVO QUADRÁTICO: UM ESTUDO DA OBTENÇÃO DE UM CONJUNTO DE NÚMEROS COMPLETAMENTE FATORADOS SOBRE UMA BASE DE FATORES

CRIVO QUADRÁTICO: UM ESTUDO DA OBTENÇÃO DE UM QUADRADO PERFEITO

RAD1507 Estatística Aplicada à Administração I Prof. Dr. Evandro Marcos Saidel Ribeiro

Flambagem. Cálculo da carga crítica via MDF

Variação ao acaso. É toda variação devida a fatores não controláveis, denominadas erro.

Algarismos Significativos Propagação de Erros ou Desvios

MÉTODO DAS DIFERENÇAS FINITAS PARA SOLUÇÃO DE EQUAÇÃO ESCALAR DE LEIS DE CONSERVAÇÃO

Tópicos Especiais de Álgebra Linear Tema # 1: Aprendendo a trabalhar com o Derive. Introdução ao Derive

4 Discretização e Linearização

7 - Distribuição de Freqüências

2 Análise de Campos Modais em Guias de Onda Arbitrários

Capítulo 2. APROXIMAÇÕES NUMÉRICAS 1D EM MALHAS UNIFORMES

O QUEBRA-CABEÇA DE LANGFORD

SÉRIE DE PROBLEMAS: CIRCUITOS DE ARITMÉTICA BINÁRIA. CIRCUITOS ITERATIVOS.

PROBLEMA DE DIFUSÃO DE CALOR RESOLVIDO POR MEIO DE EQUAÇÕES DIFERENCIAIS PARCIAIS PARABÓLICAS

Ao se calcular a média, moda e mediana, temos: Quanto mais os dados variam, menos representativa é a média.

O íon lantanídeo no acoplamento Russell-Saunders e a classificação de seus estados segundo os subgrupos do grupo GL(4

D- MÉTODO DAS APROXIMAÇÕES SUCESSIVAS

Caderno de Fórmulas em Implementação. SWAP Alterações na curva Libor

Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos 2005.

UNIDADE IV DELINEAMENTO INTEIRAMENTE CASUALIZADO (DIC)

4 Critérios para Avaliação dos Cenários

Associação entre duas variáveis quantitativas

Palavras-Chave: Métodos Interativos da Potência e Inverso, Sistemas Lineares, Autovetores e Autovalores.

Ao se calcular a média, moda e mediana, temos: Quanto mais os dados variam, menos representativa é a média.

Psicologia Conexionista Antonio Roque Aula 8 Modelos Conexionistas com tempo contínuo

7 Tratamento dos Dados

5 Relação entre Análise Limite e Programação Linear 5.1. Modelo Matemático para Análise Limite

NÚMEROS COMPLEXOS (C)

Modelo de programação por restrições para o problema de empacotamento ortogonal tridimensional

APLICAÇÃO DO MÉTODO DAS DIFERENÇAS FINITAS PARA SOLUÇÃO DAS EQUAÇÕES DE LAPLACE E POISSON PARA LINHAS DE MICROFITAS ACOPLADAS

Representação e Descrição de Regiões

UNIVERSIDADE DE PERNAMBUCO. Física Experimental. Prof o José Wilson Vieira

PUCPR- Pontifícia Universidade Católica Do Paraná PPGIA- Programa de Pós-Graduação Em Informática Aplicada PROF. DR. JACQUES FACON

2 Lógica Fuzzy Introdução

Análise Exploratória de Dados

Universidade Federal do Paraná Departamento de Informática. Reconhecimento de Padrões. Classificadores Lineares. Luiz Eduardo S. Oliveira, Ph.D.

Estudo quantitativo do processo de tomada de decisão de um projeto de melhoria da qualidade de ensino de graduação.

Medidas e resultados em um experimento.

REGRESSÃO NÃO LINEAR 27/06/2017

Responda às questões utilizando técnicas adequadas à solução de problemas de grande dimensão.

Auto-Fusão da Auto-Face, do Auto-Esboço e da Auto-Pele pelo Misturograma em imagens em nível de cinza

Figura 8.1: Distribuição uniforme de pontos em uma malha uni-dimensional. A notação empregada neste capítulo para avaliação da derivada de uma

Covariância na Propagação de Erros

Aprendizagem de Máquina

Sistemas de equações lineares

EXPANSÃO TÉRMICA DOS LÍQUIDOS

5 Formulação para Problemas de Potencial

3.3 Ordenação por Heap (Heapsort)

Elaboração de um Código Computacional para Resolução de Sistemas Lineares de Grande Porte

CAPÍTULO 2 DESCRIÇÃO DE DADOS ESTATÍSTICA DESCRITIVA

Prof. Lorí Viali, Dr.

EQUAÇÕES DIFERENCIAIS ORDINÁRIAS (EDO) PROBLEMA DO VALOR INICIAL (PVI)

4.1 Modelagem dos Resultados Considerando Sazonalização

Estatística II Antonio Roque Aula 18. Regressão Linear

DESENVOLVIMENTO DE UM PRÉ-PROCESSADOR PARA ANÁLISE ISOGEOMÉTRICA

γ = C P C V = C V + R = q = 2 γ 1 = 2 S gas = dw = W isotermico

Variabilidade Espacial do Teor de Água de um Argissolo sob Plantio Convencional de Feijão Irrigado

RISCO. Investimento inicial $ $ Taxa de retorno anual Pessimista 13% 7% Mais provável 15% 15% Otimista 17% 23% Faixa 4% 16%

Apostila de Matemática Financeira

DIFERENCIANDO SÉRIES TEMPORAIS CAÓTICAS DE ALEATÓRIAS ATRAVÉS DAS TREND STRIPS

Referências: No mínimo, para cada experimento o Caderno de Laboratório deve sempre conter:

3 Metodologia de Avaliação da Relação entre o Custo Operacional e o Preço do Óleo

CORRELAÇÃO E REGRESSÃO

3. CIRCUITOS COM AMPOP S UTILIZADOS NOS SAPS

Laboratório de Mecânica Aplicada I Estática: Roldanas e Equilíbrio de Momentos

Análise Dinâmica de uma Viga de Euler-Bernoulli Submetida a Impacto no Centro após Queda Livre Através do Método de Diferenças Finitas

3 Subtração de Fundo Segmentação por Subtração de Fundo

2ª PARTE Estudo do choque elástico e inelástico.

É o grau de associação entre duas ou mais variáveis. Pode ser: correlacional ou experimental.

MODELAGEM COMPUTACIONAL DA DIFUSÃO DE NÊUTRONS EM GEOMETRIA UNIDIMENSIONAL CARTESIANA

Análise de faltas balanceadas e não-balanceadas utilizando Z bar. 1. Análise de falta balanceada usando a matriz de impedância de barra (Z bar )

Cap. IV Análise estatística de incertezas aleatórias

MAP Cálculo Numérico e Aplicações

MÉTODOS DE ANÁLISE DE CIRCUITOS RESISTIVOS ANÁLISE NODAL

Referências: No mínimo, para cada experimento o Caderno de Laboratório deve sempre conter:

2 Aproximação por curvas impĺıcitas e partição da unidade

Realimentação negativa em ampliadores

Primeiras Redes Neurais. Aluizio Fausto Ribeiro Araújo Universidade Federal de Pernambuco Centro de Informática

ANÁLISE DAS TENSÕES TÉRMICAS EM MATERIAIS CERÂMICOS. Palavras-chave: Tensões térmicas, Propriedades variáveis, Condução de calor, GITT

Matemática. Veículo A. Veículo B. Os gráficos das funções interceptam-se quando 50t = 80t

É o grau de associação entre duas ou mais variáveis. Pode ser: correlacional. ou experimental.

Desenvolvimento de software de simulação Monte Carlo para auxiliar no estudo da propagação de doenças infecciosas

ANÁLISE DE ESTRUTURAS I INTRODUÇÃO AO MÉTODO DE CROSS

2 Redes Neurais Auto-Organizáveis

Modelagem do Transistor Bipolar

NOÇÕES SOBRE CORRELAÇÃO E REGRESSÃO LINEAR SIMPLES

Uma abordagem do algoritmo genético bi-objetivo para seleção de variedades da cana-de-açúcar com características ambiental e econômica

3 Elementos de modelagem para o problema de controle de potência

UM ALGORITMO DE PROGRAMAÇÃO MATEMÁTICA BI-OBJETIVO PARA O PROBLEMA DE LOCALIZAÇÃO DE FACILIDADES NÃO CAPACITADO

Procedimento Recursivo do Método dos Elementos de Contorno Aplicado em Problemas de Poisson

O Algoritmo Polinomial de Shor para Fatoração em um Computador Quântico

Curso de extensão, MMQ IFUSP, fevereiro/2014. Alguns exercício básicos

Transcrição:

IMPLEMENTAÇÃO DO MÉTODO DE FATORAÇÃO DE INTEIROS CRIVO QUADRÁTICO Alne de Paula Sanches 1 ; Adrana Betâna de Paula Molgora 1 Estudante do Curso de Cênca da Computação da UEMS, Undade Unverstára de Dourados; E-mal: alnee_sanches@hotmal.com Professora do Curso de Cênca da Computação da UEMS, Undade Unverstára de Dourados; E-mal: abmol@terra.com.br Área Temátca: Teora Computaconal dos Números Resumo. O Crvo Quadrátco é consderado como um dos métodos de fatoração de nteros mas mportantes da atualdade. No entanto, mplementar este método não é uma tarefa trval, pos envolve estudos sobre aspectos matemátcos e computaconas envolvdos em seu funconamento. O objetvo deste trabalho é apresentar uma descrção de uma mplementação realzada durante o desenvolvmento do mesmo. Palavras-chave: Algortmo.Congruênca. Dferença de quadrados. 1. Introdução O problema de fatoração de números nteros tem ocupado lugar de destaque na Teora dos números. Essa mportânca deve-se ao fato de que sstemas crptográfcos como o RSA têm sua segurança baseada na dfculdade de fatorar um número ntero qualquer dado, afrma Coutnho (000). O método de fatoração de nteros Crvo Quadrátco, devdo a Pomerance (1985, p.169), é consderado como um dos métodos de fatoração mas potentes, sendo utlzado na fatoração de números de aproxmadamente 100 dígtos decmas. Esse trabalho tem como objetvo realzar um estudo prátco do método Crvo Quadrátco, apresentando uma descrção de uma mplementação realzada durante o desenvolvmento do mesmo, e a análse dos resultados obtdos.. Materas e Métodos Para o alcance do objetvo proposto, foram realzados as seguntes etapas: 1. Estudo do manual da bbloteca GMP;. Integração da GMP em um complador C;

3. Estudo e mplementação do método de fatoração de nteros Crvo Quadrátco, utlzando as funções da bbloteca GMP; 4. Documentação do processo de mplementação do método Crvo Quadrátco, para um maor entendmento. 3. Resultados e Dscussão 3.1. Crvo Quadrátco A fatoração de nteros através do método Crvo Quadrátco tem como base o fato de que se exstrem números x e y que satsfaçam a condção x y (mod, então tem-se n que ( x y) ( x y) 0 (mod. Logo, ( x y) ( x y) ( x y ) e os números d mdc( x y, e f mdc( x y, poderão ser fatores não trvas de n. Ou seja, a déa básca do método consste em encontrar congruêncas da forma r y (mod, onde y y é um quadrado perfeto. Se x r, então x y (mod. De acordo com Crandall e Pomerance (00, p.01), na prátca, para encontrar x e y, em prmero lugar deve-se encontrar uma base de fatores, que é um conjunto de números prmos como, por exemplo, o conjunto 1,, p,..., p }, tal que p B, para um certo lmte B e, { para cada prmo p, o número n deve ser um resíduo quadrátco módulo p. Em seguda, são calculados números f ( r ) s dados por f ( r ) r n para r próxmo de n. Num segundo momento, devem-se determnar r s sufcentes para os quas f ( r ) pode ser completamente fatorado pela base de fatores. A quantdade desses f r ) s deve ser maor do que o número de prmos e menores do que B. Armazenando os f r ) s, em um vetor na base bnára, utlza-se a adção de vetores para descobrr uma combnação lnear que produz um vetor nulo que corresponderá a um quadrado perfeto. Então x será dado pelo produto dos r s correspondentes módulo n, e y será dado pela raz do produto dos fatores dos f r ) s correspondentes. Em seguda é calculado d mdc( x y,. Se d é fator não trval de n, então um fator fo encontrado e, para determnar o segundo fator basta calcular a dvsão de n por d. Em resumo, pode-se dzer que os passos para a fatoração de n pelo método Crvo Quadrátco, são: 1º Encontrar uma base de fatores.

º Determnar um conjunto de números que podem ser completamente fatorados sobre a base de fatores. 3º Usar a Elmnação Gaussana para encontrar um produto dos números determnados no º passo que seja um quadrado perfeto. Algortmo (Crvo Quadrátco) Entrada: n, B // número a ser fatorado e lmte B// Saída: fator1, fator //fatores de n// [Iníco] //Nessa etapa é determnada a base de fatores e calculado o símbolo de Legendre// p 1 =, r 1 = 1 ; n Para encontre números prmos p B tas que = 1; p Para encontre as raízes r com r n(mod p ); n, n1 ² Determne um conjunto S de +1 pares r, r ² n onde r é dado pela seqüênca de números r,... e n pode ser totalmente fatorado pela base de fatores; Para (( r, S) { e n p 1 ; v( ( e1, e,... e ); } Construa a matrz de ordem ( 1) com os vetores v( reduzdos (mod ); Através da Elmnação Gaussana encontre uma combnação lnear de vetores v r ) v( r )... v( r ) 0. ( 1 x r1 r... r mod n; y (...( mod n ( 1 fator 1 mdc( x y, ; fator 1 mdc( x y, ; retorne fator1, fator; [Fm algortmo] 3.. Implementação do Crvo Quadrátco 3..1. Ambente de desenvolvmento O método Crvo Quadrátco, fo mplementado na lnguagem C em uma plataforma Pentum IV, 300 MHz, 51 MB de RAM, usando o sstema operaconal Lnux Ubuntu. Para a representação de números grandes de tamanho arbtráro fo utlzada a bbloteca GMP, versão 4.3.1, escrta na lnguagem C, dsponblzada no ste http://gmplb.org/.

3... Etapas da mplementação O prmero passo do método Crvo Quadrátco é encontrar uma base de fatores. Os números pertencentes a essa base, devem satsfazer as seguntes condções: Ser prmo Ser menor que um lmte dado B Atender a condção do Símbolo de Legendre onde n / p 1 Para sso fo utlzada a função mpz_nextprme, que lsta os prmos até o lmte B especfcado. Para cada prmo fo calculado o símbolo de Legendre. Assm fo crado um vetor com os números para os quas as condções foram satsfetas. O segundo passo é determnar um conjunto de números que podem ser completamente fatorados sobre a base de fatores. Para sso, ncalmente foram calculados os f r ) s usando a fórmula f ( r ) r n. Na mplementação desta fórmula foram utlzadas as funções de adção mpz_add_u, potencação mpz_pow_u e subtração mpz_sub. Para determnar se os números f r ) s são completamente fatorados pela base de fatores fo utlzada a função mpz_cmp_u, que compara os fatores f r ) s com os prmos da base de fatores. Os f r ) s que satsfazem essa condção são armazenados em um vetor. O mesmo procedmento é feto para os r s correspondentes. O tercero passo é usar a Elmnação Gaussana para encontrar um produto dos números determnados no º passo que seja um quadrado perfeto. Para sso é crada uma matrz determnada pelos f r ) s, onde cada lnha representa um vetor de 0 s e 1 s correspondentes a um f r ), como segue: em prmero lugar é calculada a fatoração do f r ) dado; se o expoente do fator de f r ) for par atrbu-se 0 e, se for ímpar atrbu-se 1. Em seguda é utlzada a função ncalza_matrz_dentdade, que cra uma matrz dentdade cuja ordem é dada pelo número de f r ) s determnados. Após essas etapas, chama-se a função elmnação_gaussana_mod_, que realza a Elmnação Gaussana nas duas matrzes, procurando uma ou mas lnhas nulas. Encontrada uma lnha nula, deve-se tomar a lnha correspondente da matrz dentdade onde os 1 s que aparecerem correspondem aos r s determnados anterormente. Para calcular x e y como especfcado no algortmo apresentado fo utlzada, além das funções de multplcação e cálculo de raz quadrada, a função de operação modular mpz_mod. O mdc fo calculado utlzando-se a função mpz_gcd. Dessa forma foram retornados os fatores de n.

tempo de execução em segundos 3..3. Testes e análse dos resultados Foram testados números compostos ( contendo de a 30 dígtos decmas. O tempo de execução do algortmo fo meddo em segundos. Os resultados obtdos podem ser vsualzados na Fgura 1 a segur. 1000 800 600 400 00 0 4 6 8 10 1 14 16 18 0 4 6 8 30 numero de dígtos decmas de n Fgura 1: Tempo de execução Com base nos resultados obtdos, percebe-se que o tempo fatoração aumenta exponencalmente de acordo com a quantdade de dígtos de n. Não foram apresentados resultados de números maores devdo ao aumento muto sgnfcatvo do tempo de execução e à problemas de overflow (memóra nsufcente). Para uma mplementação mas efcente são necessáros estudos mas aprofundados de cada etapa do processo de fatoração. 5. Agradecmentos Os autores agradecem pelo apoo fnancero (bolsa) conceddo pela Unversdade Estadual de Mato Grosso do Sul e também por todos os acadêmcos, coordenadores, professores e técncos que, dretamente ou ndretamente, contrbuíram para a realzação desse trabalho. 6. Referêncas Crandall, R., Pomerance, C. 00. Prme Numbers- A Computatonal Perspectve. New Yor: Sprnger-Verlag, 1º Edção, 7p. Coutnho, S. 000. Números nteros e Crptografa RSA. IMPA-SBM. Pomerance, C. 1985. The Quadratc Seve Factorng Algorthm. New Yor: Sprnger- Verlag, Ed. T. Beth, N. Cot, and I. Ingemarsson, 13p.