Transcript
Page 1: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

HAL Id: inria-00074411https://hal.inria.fr/inria-00074411

Submitted on 24 May 2006

HAL is a multi-disciplinary open accessarchive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come fromteaching and research institutions in France orabroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, estdestinée au dépôt et à la diffusion de documentsscientifiques de niveau recherche, publiés ou non,émanant des établissements d’enseignement et derecherche français ou étrangers, des laboratoirespublics ou privés.

A Sparse knapsack algo-tech-cuit and its synthesisRumen Andonov, Sanjay Rajopadhye

To cite this version:Rumen Andonov, Sanjay Rajopadhye. A Sparse knapsack algo-tech-cuit and its synthesis. [ResearchReport] RR-2260, INRIA. 1994. �inria-00074411�

Page 2: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

ISS

N 0

249-

6399

appor t de r ech er ch e

1994

INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE

A Sparse Knapsack Algo-tech-cuit and its Synthesis

Rumen Andonov, Sanjay Rajopadhye

N˚ 2260Mai 1994

PROGRAMME 1

Architectures paralleles,

bases de donnees,

reseaux et systemes distribues

Page 3: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit
Page 4: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

� ��������� � ������������ ���������������� �!�#"�$%�&�� �' $��(���)* +�(����($,�

-+.0/21436573�809!3:9<;>=4?�@�A!3CB�A<DE-7A!B�9!F�AC8�GHDI1�=J=

K�LNMPOQLSR,TUTUV�W#X YZL\[^]<_a`NV,[b`Nc<LdV,e�f�RgL\RghihkjV%hiVleJm4noRQepVle�q4Vrq4MQs<sutV%V,eJm�LvtVlepV,R,c<wV%`xepyvep`�jV%TUV,e�q4_ze{`NLN_an<cutV,e

K�LNMQ|{V�`xY#K0}~ZR,f<f�MQLd`�q4V�LNV,[S]<V%L\[^]vV2s����P�Q�Q��X �*Rg_0W%�P�g��X W���foRgOQVle

�U�I�J�,�,�<�Q������Vuepyvep`NV�T+Rg`d_z[%R,hihiy�q4V%LN_a��V�Rgs�_iTUf<LdM,��V,q�RghiOPMQLd_i`N]vT���[�RghihaV,q�`d]<V�e{f�RgL\epV�RghaOQMQ�LN_a`N]<T7� �¡MQL�`N]vV#OQV%svV%LSR,h!¢�s�Rgf�edRQ[S¢�fvLNMQnvhiV%T�£�]<_z[S]U]�RPe:n�V%`N`dV%L�R%��V%L\RgOQV�[%RQe{V#f�V%Lp�¡MPLNT+R,s�[JV`N]�R,s�`d]<Vxep`\Rgs�qvRgLSq ��q4V%soepVQ�Iq�y4s�R,TU_z[0f<LNMPOQL\RgTUTU_as<O�RghiOPMQLd_i`N]vT*¤I¥:]<V#q�V%LN_a�QR,`N_aMQs�_ze�n�RPepV,qMQs¦`NL\Rgs�e��¡MQLdT+Rg`d_iMQs¦M,�#`d]<V+ep`\Rgs�qvRgLSq¦LNV,[bc<LNLdV%s�[JV,e�_is�`NM�R*ep`NLdV,RgT§�¡c<s�[J`d_iMQsoRgh�f<LdMQOQL\RgT+ebmRgs�q¨[%Rgsvs<MQ`�n�V*RQ[S]<_aV%��V,q*n4y©`d]<V+c�epcoRgh�epf�RP[JV%�¡`N_iTªVUT+Rgfvf<_is<O*`dV,[S]<s<_z«�c<V,e�n�V,[%RgcoepV+`N]<Vq4V%f�V%s�q�V%s�[J_aV,e�RgLdV�ep`\Rg`d_z[%R,hihiy+c<svf<LNV,q�_z[J`\Rgn<haV�¤�¬<c<LN`d]<V%LdTUMQLdV�e{c�[S]*RUe{f�RgL\epV�RghaOQMPLN_i`d]<T��¡MQL`N]<V�OPV%s<V%L\Rgh0¢�s�Rgf�edRQ[S¢*f<LNMPn<hiV�T­]�RPe�s<MP`�n�V%V�s�f<LdMQf�M�e{V,q�_as*`N]<V�hi_a`NV%L\Rg`NcvLNV�m!`dM+`N]<V�n�V,ep`Mg�IMPc<L:¢�s<M,£�hiV,q�OQV�¤I��V�R,hze{M�_iTªf<hiV%T�V%s�`I`N]<V�epf�R,LSepV�RghiOPMQLd_i`N]vT®MPs+R�ha_is<V,R,L�RQepy�s�[S]<LNMPs<MQcoeRgLdLSR%y�£�_i`d]�[JMQs�e{`SR,s4`uep_i¯�V�TUV%TUMPLNy#MPs�V,RP[^]�K0°±�²_k¤³V�¤amQR#£uRl��Vb�¡LNMQs�`0R,LNLSR%y�f<LdM�[JV,edepMQLb�S¤0¥:]<VRghaOQMQLd_i`d]<T�[�Rgs+LNc<s+MPs7R,s4yªs4c<T�n�V%L0Mg��f<LNM�[bV,eNe{MQLSexRgsoq´]oRQe�MQf<`d_iT+R,hµ`d_iTUV�epf�V%Vlq4c<fC¤0¥:]<VepV,[bMQs�q7�¡n�RQ[S¢�`NLSRP[^¢�_isvO4�If<]�RPepV#M,�I`N]<V�q�y4s�R,TU_z[:fvLNMQOPLSR,TUTU_isvO�_¶e0Rghze{M�TUM�q4_¸·�V,q�epM�`d]�Rg`�_a`[%Rgs+n�V�f�V%Lp�¡MPLNTUV,qU_as+epf�R,LSe{V%hiy Rgsoq´_as R�TUV�TUMQLdy�VJ¹´[J_iV�s4`0T+R,s<s<V%L�¤

º¼»>½¾�¿{À%Á ½¾:Â4Ãi¿{Ä¡Å^Æ

Ç%È,É,ÉQÊb˲̡ÍdÎ�Ï%Ð#Ì¡Ñ,Í�ÒgË¡ÍpÓPÔ²Ñ>Õ!Ê%ÊbË�Î%Ö×ÓPØS̲ÍdÎ#ÙCÍ{Ú²ÍdØSË�Ô²Ñ>Û<˲ÊbÜJËkØSÝßÞáàbâPØ^ÓPÎ#Ï%Ðx̲Ñ,ÍuãoÚ¡É,˲ÖäÌ�å Ùçæ�É,˲Êdè�ÍdÔéÌêçæ�êCæ�ëZìzêCÊQí,îbîbïJëbðpíñ ØSÓPÎlÊbÓ,ÊSò,óHÖ×Ë¡Ö×ÚkØgí ôiËIìiÊbÓxõ×ÍdØNòJÍHôaË¡ÊJݨÕ!Í{Ó%Ì¡Í{ËHÊSô Õ!ÊbÝZÉ,È,̲Í{ËöÇgÔ�Ö×Í{ÓPÔ�Í�Ø^ÓPÎZ÷<ÍdÔ²Ñ,Ó,Êbõ×ÊJÜbÐ%â�Ç%Ê^øùØ,â,åµÈ,õ×Ü�Ø^Ë¡Ö¸Øbðñ�ñ ËkØ{èéÊbÉPØJÎ%Ñ%ÐbÍdóHÖ×Ë¡Ö×ÚkØgí ôaËIìiÉPØS˲ָ̡ØSõ×õ×Ð�Ú¡ÈgÉ,ÉPÊJˡ̲ÍdÎ#Ï%Ð�êHÇ,Ò�ú�Ë�ØSÓ%ÌCêCÊPí,û�ü¡Û4ý¼þgÿ������bëJð

Unite de recherche INRIA Rennes

IRISA, Campus universitaire de Beaulieu, 35042 RENNES Cedex (France)

Telephone : (33) 99 84 71 00 – Telecopie : (33) 99 84 71 71

Page 5: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

� ���������$��(��� �#�x��>"���� �¦�U"*� �% ���:��©���� '�" ������ '��´�� ©��) ´�(����� �� �������,$,�����($��´

���� �������� ���ZMQcoe:TUMQs�`NLdMQs�e�[JMQTUTªV%s�`0q�tV%Ld_i��V%L�e{y<e{`<tV%T+R,`N_¶« c<V�T�V%s�`Ic<s RghiOPMQLd_i`N]vTUV#R,T±tV%�hi_aMQLvtV¨��R,f<f�V%h�tV ���! #"#$&%('*),+.-�/�$0-&1�2��Uf�MQcvL7hiV*fvLNMQnvh�jV%TUV O�tV%sutV%LSR,h�q�c2edRQ[J�\jRg�kq4M�e*R%��V,[*q�V,ef�V%Lp�¡MPLNT+R,s�[JV,e�TUV%_ahihiV�c<LNV�e(V%s*TªMgy�V�s<s<V�«�c<V�h43×R,hiOQMPLN_a`N]<TUV�ep`SR,s�q<R,LSq*f�RgL#fvLNMQOPLSR,TUT+Rg`d_iMPsq4y�s�RgTU_¶« cvV�¤650V%`N`dV©q�tV%LN_a�QR,`N_aMQsCm�« cv_#LNV%f�MùepV epc<L+c<s<V*`dLSRPq4c�[J`d_iMQs6q4V,e tV,«�c�R,`N_iMPs�e�LvtV,[Jc<Ld�LNV%s�`NVle#ep`\Rgs�q<R,LSq*��V%LSe�c<s*h¶Rgs<OùRgOQV��¡MQso[J`N_aMQs<s<V�h�q4V�ha_ze{`NV,ebmµs<V�f�V%cv`Z�kRg_aLNV�R,f<f�V%h0R,c<w*`NV,[S]<�s<_z«�c<V,e�[bhzRQedep_¶« c<Vle�q4VUfvLNMQ|{V,[b`N_iMPs¨epf�R,`N_zR,hiVUV�`�`NV%TUf�MPLNV%hahiV�[%R,L�hiV,erq:tV%f�V%s�q<R,s�[JV,e�svV7e{MQs�`f�RQer[JMQsvs4c<Vle�ep`\Rg`d_z«�c<V%TUV%s�`%¤87xs�`dV%h�RghiOPMQLd_i`N]vTUV�[JLNV�c<w7f�MQcvL�hiV�f<LdMQn<hkjV%TUV�q�c¦eNRP[7jR q4M�eO�tV%sutV%LSR,hHs93äRgf<foRgLSR;:<i`xf�RQerjR�s<MQ`dLNV�[bMQs<s�R;:<zedeNRgso[JV�q<R,s�eZh¶R�ha_i`N`vtV%LSR,`Nc<LdV�¤=�xMQc�e�_iTUfvh%tV%T�VJs�`NMPs�eRgc�edep_�[JV%`�RghaOQMPLN_i`d]<TUV>epc<L#cvs*L<tV,e{V,Rgc*ha_isutV,R,_iLdV�RPepy�s�[S]<LNMPs<V+�²c<s*LvtV,epVlRgc¨jR��¡LNMPs4`\e#q>3³MPs�q4V,eS�q<RgsoeZhiV,«�c<V%hö[^]oRQ«�c<V#f<LdM�[JV,eNe{V%c<L tV%h�tV�TUV%s�`SRg_aLNVxq4_¶epf�M�e{V�q>3³cvs<V�T±tV%TUMP_iLNVxq�V�`\Rg_ahihiVx·�w4Vù¤>50V%`RghaOQMQLd_i`d]<TUV�[bLNV%c<w+�¡MQs�[b`N_iMPs<s<V�R%��V,[�c<s*svMQT�n<LNV>« c<V�hz[JMPs�« cvV�q4V�f<LNM�[bV,eNe{V%c<LSe#V%`�M@? LNV�c<sACB -D-FE#1 B MQf<`d_iT+R,h�¤HGCR�e{V,[JMPs�q4V+f<]�RPepV©�¡hiVULdV%`NMPc<L�RgLdLN_kjV%LNVQ��q4V+hzR7f<LdMQOPLSRgTªT+Rg`d_iMQs�q4y4soRg�TU_z«�c<VxV,ep` tV%OùRghiV�TUV%s�`(TªM�q4_ ·tV�fµMPc<L�eI3³V�w�tV,[bc<`NV%L�R,c�eNe{_�q4V�T+R,s<_kjV�LNV�[JLdV%c�e{V#V%`+tV,[JMPs<MQTªV#V%sT±tV%TUMP_iLdV�¤

Page 6: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

��� B �#$ A -����=� B=A �#/�����! #"� 'C-F/0)�C/ 1�%(' � �=E %(' A ������' )8- A % A �� � ´���:�7'�"��x�0$%�U ¥:]<V#¢�s�RgfoeNRQ[S¢Uf<LdMQn<haV%T _ze�RrR�[JhzRPeNe{_z[Qm,�#K���[JMPTUf<haV%`NVx[JMPT�nv_is�R,`NMQLd_zR,hµMPf<`N_aTU_i¯lRg`N_aMQs�f<LdMQn<�hiV%T £�_i`d]�T+R,s4y>Rgf<fvhi_z[�Rg`N_aMQs�e����Zc��Q��m��*¥��Q���km�Rgs�qU[�Rgs�nµVx�¡MQLNT�c<h¶Rg`NVlq�RQe��¡MQhahiM,£xe��I£:V�RgLNVOQ_a��V%srR¢�s�RgfoeNRQ[S¢�M,� [%R,f�RQ[J_a`{y��gmP_is�`NMx£�]<_z[S]�£:V:T´Rlyxf<c<`�� `py�f�V,e!Mg� MPn<|{V,[J`SebmgVlRQ[S]�MQn<|{Vl[J`Mg��`{y4f�V��H]oRQe�R B $ " � '²m"!$#�mvRgs�q R&% -&% @) '¡m(')#�m �*')#km�!$#{m+� Rgs�q,�ZR,LNVrRghah!f�M�e{_i`N_a��VZ_as4`dV%OQV�LSe^�\¤-ZV%`dV%LNTU_as<V�./#�mC`N]<V�s�c<T�n�V%LxMg�0�¡�²`d]�`{y�fµV�MPn<|{V,[J`\e�`dM7n�Vª[^]<MùepV%s epM RPe�`NM+T+R,w4_aTU_i¯�V#`N]<V`NMP`SRghCfvLNMg·o`Z£�_a`N]<MPc<`ZV�w<[JV�V,q4_isvO�`d]<Vr[%RgfoRQ[J_a`pyùm4_�¤ V�¤im

T+R,w�1324#6587 !�#9./#:�;24#65+7 ')#<./#>=?��@�./#BA±��_as4`dV%OQV�L�@��DC2W"@S�$@FE/E/E/@G�IH �dWg�

}k�J.�_ze!LNVlep`NLd_z[J`dV,qZ`dMZn�V�RLK %9�=�#$�����V,[J`dMQL��²_�¤ V�¤imbV,RQ[S]�MQn<|{V,[b`I[%Rgs�n�V�[S]<M�e{V%srRg`ITUM�e{`!MPs�[JVQ�£:V#]oRl��V�`N]<V�£:V�hih!¢�s<M,£�s �NMùW�[%RPepV�¤0¥:]vV�¢�s�R,f�eNRP[^¢UfvLNMQnvhiV%T [�Rgs+n�V�e{MQha��V,qUepVl« c<V�s4`d_zRghahiy_is:Or�*�&�%�x`N_iTªV�m!R,s�q*`N]<_¶e�OP_i��V,ex_i`rR B=A -&1�E#" B "��6�"�="#+ % ��� [JMQTUfvhiV%w�_i`{yI�QPSR$Tl����ep_as�[JV�_a`#_zef�MQhiy�s<MPTU_zR,h�£�¤³L%¤ `%¤PRZf�R,LSRgTªV%`NV%L��²£�]v_z[S]�_i`\epV%h¸�dmgT´Rly�OQLNM,£¨V%w4f�MPs<V%s�`N_zR,hihay#£�_i`d]�_is<f<cv`�e{_i¯%VQ�\¤��V>ep`Ncoq4y q4y4soRgTU_¶[�fvLNMQOPLSR,TUTU_isvO&�VU:V�h9WNTPm��Zc��P����m<MQsvV�Mg�0`d]<V�e{`SRgsoq<RgL\q*Rgf<f<LdM�RP[^]<Vle

`NM�epMQha�4_as<O*`N]v_ze�fvLNMQnvhiV%T*¤ ¥:]<V RghaOQMPLN_i`d]<T§£:MQLd¢<e�_as©`{£:M f<]�RQe{V,eJm�R��¡MQLd£�R,LSq©f<]�RPepVU�¡MQL[%Rgh¶[Jc<h¶Rg`N_as<OU`d]<V B $F" � '�Mg�u`N]<V�MQfv`N_iT´Rgh0e{MQhicv`N_iMPsCmIRgs�q�`N]<V%sömHR+n�RQ[S¢�`NLSRP[^¢�_isvOUf<]�RPepVU`d]�Rg`c�epVleH`N]<_¶e�`NMr[JMQsoep`NLdc�[J`�`d]<VxepMPhic<`d_iMPs���V,[b`NMQL�m .<¤�¥:]vV�LNV,[JcvLNLNV�s�[JV:Vl« c�R,`N_aMQs��¡MQL�`d]<V�¡MPLN£uRgLSqf<]�RPepV�_ze:OP_i��V%s+n�V%hiM,£�¤

X�Y �[Z<�\C±T+R,w<� X�Y�] 7g�^Zo�_@*! Y\`aX�Y �[ZLba' Y �N� �k� �¥:]<V�Vl« c�R,`N_aMQs*_zexq4VJ·os<V,q´�¡MPL�Rghah��&cdZ,=���@\�ecgf,=��*m!R,s�q7`N]<Vrn�MQc<s�qvRgLNy�[bMQs�q4_a`N_aMQs�eRgLdV�m Xih �[Z<��C X"Y �k� ��C��7R,s�q X�Y �[Z<�LCjb�k £�]<V�slZac �$m�£�V+RgLdV�_as4`dV%LNV,e{`NV,q*_is*·�s�q�_is<OX 2 �*�%�S¤�¥:]<VULNVl[Jc<LNLdV%s�[JV��¡MQLr`N]<V´�NM�W+¢�s�Rgf�edRQ[S¢�fvLNMQnvhiV%T§_ze�MQs<hay©R ephi_aOQ]�`�TUM�q�_ · [%R,`N_aMQs��e{V%V#`N]vV�e{c<n�ed[JLN_af<`ZM,��`d]<VrepV,[bMQs�q RgLNOPc<TUV%s�`J�_�X�Y �[Z<�\C±T+R,w<� X�Y�] 7g�^Zo�_@*! Y\`aX YG] 7 �^ZLba' Y �N� � � �Y#e�[JMQTªf�RgLdV,qU`NM�n<LSR,s�[^]�Rgs�q+n�MQc<s�q©�kRgs<MP`N]<V�L�[JhzRPeNe{_z[#`NV,[S]<s<_¶« cvV#`NMªepMPhi��V�`N]<V�f<LdMQn<�

hiV%T �Sm<_i`x_zexMg�¡`NV�s©R,LNOQcvV,qa�³�*¥��P���H`d]�Rg`rq4y�s�RgTª_z[#f<LNMPOQL\RgTUTU_as<Oª[%Rgh¶[Jc<hzR,`NV,e�`N]vV��¡c<s�[J`d_iMQsX Y �[Z<��Rg` ���(�Cf�MQ_is�`Se�R,s�q�`N]�c�e ���6% � � A f�R%y<e�`N]<V�£:MPLSe{`�[%RPepV�f<LN_¶[JV�mDOr�*�&�l�\mC£�]<V%LNVlRQe#`N]<VR%��V%LSR,OQV�[%RPepV*f�V%Lp�¡MPLNT+R,s�[JV Mg��nvLSRgso[^]ßR,s�q n�MPc<s�q2R,hiOQMPLN_a`N]<T+e�_ze�Mg�¡`NV�s T�c�[S] n�V%`d`NV%L�¤�ZM,£:V%��V�L%m �ZMPLNM,£�_i`d¯�Rgsoqon�R,]<s<_p�V��n8T%�"�!]�R%��V#OP_i��V%s+R�q�y4s�R,TU_z[�f<LdMQOQL\RgTUTª_is<OrRghaOQMPLN_i`d]<T�¡MQLU`d]<V*� M�W*f<LdMQn<haV%T £�]<_z[S] ]�RPeUT�c�[S]©n�V%`d`NV%L+R%��V%L\RgOPV*[%RPepV*f�V%Lp�¡MPLNT+R,s�[JV�¤ß¥CM¦q<R,`NV�mepc�[S] Rgs*_aTUf<LNM,��V,q�RghaOQMPLN_i`d]<T ]�RQe�s<MP`Zn�V%V%s�q4V%��V%haMQf�V,q��¡MQLx`N]vV �-q�8-&$ ����¢4s�R,f�eNRP[^¢+f<LdMQn<�hiV%T�¤U}�s©`N]v_ze�foRgf�V%L%m�£�V+epyvep`dV%T+R,`N_z[�Rghihay q4V%LN_a��VUe{c�[S]¦Rgs¦R,hiOPMQLN_a`N]<T�m�Rgsoq�`N]<V�s¦RQq<q�LNV,ede_i`\e�_iTªf<hiV%T�V%s�`SR,`N_iMPs*MQs Rgs¨Rgf<fvhi_z[�Rg`N_aMQs¨epf�V,[b_ · [�fvLNM�[JV,edepMPLUR,LNLSR%y�¤�G!_i¢�VU`d]<V,�ZMQLdM,£�_i`N¯��n�Rg]vs<_�R,hiOQMPLN_a`N]<T*mCMPc<L�_aTUf<LNM,��V,q*R,hiOPMQLN_a`N]<T§R,hze{M*c�epV,e�`N]<V��kRQ[J`�`N]oRg`�`N]vVU[JMùep`��¡c<s�[J`d_iMQs_ze�TUMQs<MP`NMPs<_z[^X ]<V%s�[bV�MQs<V+s<V%Vlq<e�`dM*[%R,hz[Jc<h¶Rg`dVU_i`�MQsvhiy Rg`�[JV%Ld`SR,_is /�$&%('4% /D��� B "#%9��' A ¤*¥:]<V[JMQs�`NLd_in<cv`N_iMPs�e:Mg��`N]vV�foRgf�V%L�RgLNVre{c<TUT+R,LN_i¯�V,q�RPe(�¡MQhahiM,£xe��ÙIÙ�Ó\r%ëbëJî��

Page 7: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

� � 1�+.-�� �0�=E#" �="����\� � ��� � ������� " B �#E@)+� -� YZs+_iTªf<LNM,��V,q�R,hiOQMPLN_a`N]<T&�k[%RghahiV,q�`N]<VrepfoRgLSe{VrRghiOPMQLd_i`N]vT7�H�¡MPL�`N]<V�OQV�s<V%LSR,hC¢4soRgf�edRQ[S¢f<LdMQn<haV%T®£�]v_z[S]�]�RPe:n�V%`N`dV%L�Rl��V�LSRgOPV�[%RPepV#f�V%L{�¡MQLNT´Rgs�[JVx`N]oRgsU`d]<V�ep`\Rgs�qvRgLSq*�kq4V%s�e{VQ�q4y�s�RgTª_z[Zf<LdMQOPLSRgTªTU_is<O>RghaOQMQLd_i`d]<T*¤

� n�yvep`dV%T+Rg`d_z[�q4V%Ld_i�PRg`d_iMPs7Mg��`d]<V�e{f�RgL\epV�RghaOQMPLN_i`d]<T n4y+`dLSRgsoeé�¡MQLdT+Rg`d_iMPs7Mg��`d]<V�LdV,[Jc<Ld�LNV�s�[JV�Mg�u`N]<Vªep`\Rgs�qvRgLSq�q4y�s�RgTª_z[�fvLNMQOPLSR,TUTU_isvO��¡MQLdT�c<h¶Rg`d_iMQs _is�`NM+R+e{`NLNVlRgT­�¡c<s�[b�`N_aMQs�R,hHfvLNMQOPLSR,T*¤

� �7M�q4_¸· [%Rg`d_iMPs©Mg�x`d]<VUR,hiOPMQLN_a`N]<T&�¡MQL�n�M�MQ¢�¢�V%V%fv_is<O _is4�¡MPLNT+R,`N_iMPs©e{M7`d]�Rg`r`N]<V�n�RQ[S¢��`NL\RQ[S¢4_as<O�f<]�RPepVr[%Rgs´Rghze{M�n�V#f�V%L{�¡MQLNTªV,q�epf�R,LSe{V%hiy�_isªR���V%Ldy�TUV%TUMPLNy�VJ¹´[J_iV�s4`IT+Rgsv�s<V%L>�²n�V,[%R,c�epVrMg�uepf�RP[JV�ha_iTU_a`SR,`N_iMPs�eJm<£�V�q4Mªs<MQ`�q�_zeN[bc�eNe�`N]<_¶eZ]<V%LdV�¤x¥:]<V�_as4`dV%LNVlep`NVlqLNVlRQq4V%LI_ze!LdVJ�¡V%LdLNV,q#`NM �³Y�~Z�,�Qn8�kmQR%�PRg_ahzRgnvhiV��¡MQL�Rgs<MPs4y�TUMPc�eµ�¡`Nf��¡LNMQT��� �����������������4�\¤

� }�TUf<haV%TUVbs4`\Rg`N_aMQs Mg�x`N]vVUe{f�RgL\epV+R,hiOQMPLN_a`N]<T§MQs¦R+hi_as<V,RgLrRPepy�s�[^]vLNMQsvMQc�erRgLNL\R%y�£�_a`N][JMPs�ep`\Rgs�`:e{_i¯%V�TUV%TUMPLNy#MPs�V,RQ[S]�K0° �²_k¤³V�¤am,R#£�R%��VJ�¡LNMPs4`�RgLdLSR%y�fvLNM�[JV,edepMPL�����YSP�~��P� �¡�n�yUf<LNM,��_is<O�n�MPc<s�q<eZMPs7`d]<Vrep_i¯�V#Mg�0haM�[%RghCnvc�? V%L�TUV%TUMPLNy�_asUV,RQ[S]+f<LNM�[bV,eNe{MQL%¤

¥:]<V*LdV%T+R,_is�q4V�L�M,��`N]vV*f�Rgf�V%L _ze�MPLNO�R,s<_i¯�V,q RPe��¡MQhihaM,£xe��dn�V,[*�©OP_i��V,eUR,s _as4`dc<_i`d_i��VV%w�f<hzR,s�Rg`d_iMQs�Mg� `d]<V��ZMQLdM,£�_i`N¯�� n�R,]<s<_�� M�Wx¢4s�R,f�eNRP[^¢>RghaOQMQLd_i`d]<T*¤I¥:]<V%sCm8n�Vl[ � f<LNVlepV%s�`SeH`d]<V�¡MQLdT+Rgh q4V%Ld_i�PRg`d_iMPs�M,�I`N]<V�e{f�RgL\epV�R,hiOPMQLN_a`N]<T �¡MQL�`N]<VxOQV�s<V%LSR,h!¢�s�RgfoeNRQ[S¢�f<LNMPn<hiV%T �¡n�V,[%RgcoepVMg�çepf�RP[JV�hi_aTU_i`\Rg`N_aMQs�e!£�V�MQs<hay�`dLNV,R,`�`N]<V:�¡MPLN£uRgLSq�f<]�RPepVQ�\¤)n�V,[:��e{]<M,£xe�]<M,£ `N]vVxRghiOPMQLd_i`N]vT[%Rgs*n�V�_aTUf<hiV�T�V%s�`NV�q�MPs�R�£�R%��VJ�¡LdMQs�`#R,LNLSR%y f<LNM�[JVleNepMPL%m!£�]vV%LNVrV,RQ[S]�K0° ]�RPeZMQsvhiyU·�s<_a`NVTUV%TUMPLNy�¤ ¬H_is�R,hihay�m n�V,[,W�OQ_a��V,e�MQc<L [JMPs�[Jhicoep_iMPs�e�Rgs�qßq4V,ed[JLN_anµVle�MPfµV�s f<LdMQn<haV%T+eb¤ ��V[JMQso[Jhic�q�V�`d]<_ze:_as4`dLNM�q4co[J`N_aMQs+£�_i`d]7R�n<Ld_iVJ��e{c<LN��V%yù¤

�! "� #%$'&"(*)�$�+-, .!/�0�*Rgs�y�Rgc<`d]<MQL\e�]�R%��V�_as4��V,e{`N_aO�Rg`dV,q�foRgLSR,hihaV%hx��q4V%soepVQ�xq�y4s�R,TU_z[�f<LNMPOQL\RgTUTU_as<O+R,hiOQMPLN_a`N]<T+e�¡MQLU`d]<V+¢4soRgf�edRQ[S¢ fvLNMQnvhiV%T*¤¨�7M�e{`�£�MQLd¢ ]oRQeU[JMPs�[JV%s�`NL\Rg`dV,q©MQs `d]<V*� M�W7fvLNMQnvhiV%T �¼�¡MPLV%wvRgTUf<haV�m�� ¬oV�L����i�²�\m#Rgsoq RPq<q4LNVleNepVle7q4_ ?!V�LNV%s�`UTUM�q4V�hze�M,��f�R,LSRghahiV%h�T+RQ[S]<_isvV,eéX K(~xY#�*ebmq4_ze{`NLd_in<c<`dV,q±TUV%TUMPLNy©T+RP[^]v_is<V,ebm:hi_as<V,R,L7R,LNL\RlyveJmxTUV,e{]<V,eUR,s�q f�V%Lp�¡Vl[J`+ep]�c�1ªV,eJ¤�¥:]<V�LNV]�RQe+R,hzepM¦n�V%V%s6epMPTUV7£�MQLd¢ MQsß`N]vV*OQV%s<V�LSRgh�¢4s�R,f�eNRP[^¢±fvLNMQnvhiV%T*muRghih�q4V,Rgha_is<O £�_i`N]±`d]<Vq4V%s�e{V�q4y�s�RgTU_¶[#f<LNMPOQLSR,TUTU_as<OUR,hiOPMQLN_a`N]<T �³Y#~x�g�ùR4m�5 5pR��P�<mC¥CV%s��Q�i��¤r¬<MQL#`d]<_zebm!`N]<V�n�V,e{`f�V%Lp�¡MPLNT+R,s�[JV:_¶eçMPn<`SR,_is<Vlq�n4y�MQcvL0epyvep`dMQhi_¶[:R,hiOQMP�²`dV,[S]<��[bc<_i` �³Y#~x�g�ùR��C�kepV%V�LNVJ�¡V�LNV%s�[bV,e!`N]<V�LNV%_as�¡MQL�R�[bMQTUf<haV%`NVxq�_zeN[bc�eNe{_iMQs �S¤¥:]<V�noRQep_¶[_¶q4V,R� � 7#�Q�/�<M,�I`N]<Vxe{f�RgL\epV�R,hiOQMPLN_a`N]<T _ze0R�« c�R,LN`dV%L�[JV%s�`Nc<Ldy�MPhzq!m�n<cv`:e{V%V%T+e

`NM�]�R%��V#n�V%V�sUc�epVlq´MPs<hiy��¡MQL�`d]<V�� M�W�f<LNMPn<hiV%T�mQ`NM�`d]<V#n�V,ep`�M,��MPc<L�¢�s<M,£�hiV,q4OPV�¤D�xMQLNM,£�_a`N¯Rgs�q n�R,]<s<_#OP_i��V*e{V,«�c<V%s�`N_zR,h#R,hiOPMQLN_a`N]<T´e��¡MQLU`d]<V��NMùW*¢4s�R,f�eNRP[^¢ Rgs�q±LNV�hzRg`dV,q fvLNMQnvhiV%T+ec�ep_as<O�`N]<_¶e_¶q4V,R&�V��n8T2�i�0� n�V,[�W�¤QW �0��� n8T�����m�R,s�q G!V�V�V�`#R,h�¤<_iTªf<hiV%T�Vbs4`0_i`�MPs R�]�y4f�V%L\[Jc<n�Vc�ep_as<O*R q4_i��_zq�V�Rgs�q©[bMQs�«�c<V%Lrep`dLSR,`NV%OPy � G>n8n��3����mI£�]<_z[S]*`SR,¢�V,e54�� �&�7678 ` �:9J�x`N_aTUV�MQs;8

ü¡êIÙCüzæ

Page 8: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

��� B �#$ A -����=� B=A �#/�����! #"� 'C-F/0)�C/ 1�%(' � �=E %(' A ������' )8- A % A Wf<LNM�[bV,eNe{MQLSebm�Rgsoq�c�epV,e*4r�*�&�%�Ce{`NMQL\RgOPV�_is�`d]<V:£�MQL\ep`�[%RQe{V��%¤ 50]<V�s�V%`IR,h�¤,f<LNV,e{V%s�`IRf<_af�V%hi_as<V,qhi_as<V,RgLuRgLdLSR%yU£�]<_¶[^]UcoepV,e Or�*�&�%�0e{`NMQL\RgOPV�m Or� �l��MQs7VlRQ[S]UMg����f<LNM�[JVleNepMPLSe�� 5pR��P�<m 5��*�Q���k¤¥:]<V%yª[JhzR,_iT `d]�Rg`�`d]<V#n�RP[^¢�`NL\RQ[S¢4_as<O�`SRg¢�Vle 4r�*�7�0`N_aTUV�mQnvc<`�q4M�svMQ`�OQ_a��V�Rgs´RghiOPMQLd_i`N]vT�`NMepc<noep`SR,s4`d_zR,`NV�`N]<_¶e�[JhzR,_iT*¤��V TUV%s�`N_iMPs¦`N]�R,`UMQc<LªTUM�q4V%hxMg�>[JMPTUf<c<`\Rg`N_aMQs¨_ze�£:V,R,¢�V%LpX Rgs±RPepy�s�[S]<LNMPs<MQc�eULd_is<O

Mg��8�f<LdM�[JV,edepMQL\eJmI£�]<V%LNV�V,RP[^]*f<LdM�[JV,edepMQL�]�RPe#MQs<hay�R�[bMQs�e{`SRgs�`�TUV%TUMPLNy �²M,�xep_a¯%V����SmIRgs�q£:V>RQ[S]<_iV%��V�`N]<V�MPf<`N_aT+RghC£�MQLSe{`N�k[%RQe{V�f�V%Lp�¡MPLNT+R,s�[JV�m<s�R,TUV%hay3Or� 2 �� �S¤ 7xs<hi_a¢�V�epMPTUV�M,�0`N]<V`N]<V�MQLNV�`N_z[�Rgh!£�MQLd¢!m�£:V>q4M�svMQ`�Rg`N`dV%TUf<`�`dM�nvLN_isvO�`d]<V�Ldc<s<s<_as<O�`d_iTUV�q4M,£�s7`NM�f�MQhay4s<MPTU_zR,hRg`0`N]vV�V%w4f�V%soepV�Mg�çRgsUV�w4f�MQsvV%s4`d_zR,h4s�c<T�nµV�LHM,�Cf<LdM�[JV,eNe{MQL\eZ�²V���V%s�£�_i`d]�`N]<VxLSR,f<_zq�RQq4�PR,s�[JV,e_is�� G>n�}0`NV,[S]<s<MPhiMPOQy�m�£:V#�¡V%V%h `N]�R,`�`N]<_¶e_¶e:`NM�M�V%w4f�V%soep_i��VP�S¤� � ´�("�$��($U�� �7�©���� *���0$%�U �� ß�(�� �+������� ����������$%�0� �

��V�s<M,£ f<LdV,epV�s4`uRgs+_is�`Nc<_a`N_a��V�V%w4fvhzRgsoRg`N_aMQsUM,��`d]<V��ZMPLNM,£�_i`d¯%� n�Rg]<sv_CepfoRgLSe{VrRghiOPMQLd_i`N]vT®�¡MQL`N]<V��NMùW�¢�s�R,f�eNRP[^¢�f<LNMPn<hiV�T*¤I}ésª`N]<V#LdV,[Jc<LdLNV%so[JV�� � �Sm X"Y �[Z<��LNV%f<LdV,epV�s4`\eá`d]<V#MPf<`N_aT+Rgh�f<LdMg·�``N]�R,`�[%R,s*nµV�RP[^]v_iV%��V,qUc�e{_is<OªMQs<hay�`d]<V�MQn<|{Vl[J`Se�WDE/E/E/f�m Rgsoq £�_a`N]*R+[%R,f�RQ[b_i`{yUMg��Z�¤#}²��£:VRQq<q�TUMQLdVx[%Rgf�RP[J_i`{y+�¡_�¤³Vù¤im�RPeDZ�_is�[bLNV,RPepV,eS�Sm4£�V#[�RgsUMPs<hiy % + B $F"��@-�`N]vVZ`dMQ`SR,h!f<LdMg·�`�m<R,s�qU£:V`N]�c�e:]�R%��V#`d]<V#�¡MQhihaM,£�_is<O�MPn�epV%Ld�PRg`N_aMQsC¤� � � �v�������>)8-�� 1��=/I'4% " � X Y �^Z<� % A + " �="�'4" �=% /D���(� � %9�,/�$0-F� A %9�� %9��Z��

�ZM,£�m4R,s4y�TUMPs<MQ`dMQs<_¶[�¡c<s�[J`d_iMPs�]�RPe�R��Se{`NV%f�£�_ze{V���e{]�Rgf�V���e{V%V#¬I_iOUW,�SmvRgs�qU]<V%so[JV�m�MQs<V[%Rgs�q4V%`dV%LNTU_as<Vx_i`Se:�PR,hic<V��¡MQL�Rgs�y Z�m<_¸�0£:V�¢�s<M,£2_i`\e:�QR,hic<VleZR,`Z`d]<V�e{`SRgLd`ZM,�0V,RP[^]�ep`NV�fC¤�}�`T+R%y�`N]<V�LNVJ�¡MPLNV#n�V#LdV%f<LNVlepV%s�`NV,qª[JMQTUfvhiV%`dV%hiy�n�y+R�epV%`�m����#Mg� B �#% $ A ��[%R,hihaV,qU[JLd_i`N_¶[%Rgh�f�MQ_as4`\e^��! @#"��$ !�*�kmQOQ_a�4_as<O�`N]<Vr[JM�MPLSq4_as�Rg`dV,e�£�]<V%LNV�_a`x[^]�R,s<OQVleJm�Rgsoq�`N]vV�svV%£ �PR,hic<V�¤¥:]<Vrepf�R,LSepV>RghaOQMQLd_i`d]<T�_ze:noRQepVlq�MQs `{£:M�¢�V%y�MQn�e{V%LN�PR,`N_iMPs�e��

� � � �v���&%(')�*"��$ !�% A � + " �="�'4" �=% /+� 1��=/I'4% " � � '*)8-�� �,� "#$ B " A %('4% �@- %9��' - -&$ A �p! � �=E&' �'*)8--� 1��=/I'4% " �L! ` "��. ba'�� % A ��� A " + " �="�'4" �=% /��}�s �kRP[J`%mC_i`�_¶e�e{_iTUfvhiy+`N]<V��¡c<s�[b`N_iMPsCm/"��. ö�ep]<_¸�¡`NV,q*`NM+`N]vV�Ld_iOQ]�`�n4yI' R,s�q�c<f�n�y&! ��e{V%V¬H_iOr���S¤0Y#e0R�LdV,epcvhi`%m�_a`0[%Rgs´Rghze{M�n�VxLNV%f<LdV,epV�s4`dV,q�n�y�RrepV%`�m0��1� M,�Cf�R,_iL\eJ¤2�/1� _¶e([bMQs�e{`NLNco[J`NV,q�¡LNMPT3����n4y e{_iTUf<hayURPq<q4_as<OU`N]vV�foRg_iL �V'�@*!$�C`dMUV,RQ[S]+V%hiV�TUV%s�`:R,s�q7n�y�_as�[Jhac�q4_isvO,�V'�@*!$��RQeRgs RQqvq4_i`d_iMQsoRghIV%hiV%TªV%s4`�_is+`N]<Vre{V%`/�

� 1� C(4��V'�@*!$�.52674��! ` '�@#"��$ !� ` !$�,8+�! @#"��. !�*�:9;���<5� � � �v���7=>')�/"��$ !� � �=E@?r�$ !� �#$0- ' % " + " �="�'4" �=% /A� 1$�=/&' % " � A � '*)8-�� ' )8-0� 1$�,/I' % " �CB��$ !�\CT+Rgwv�$"��$ !�G@D?r�. ö�d� % A ��� A " + " �="�' " �,% /��ñFE Ö×ÓrØ^ÓPÎ#Ç%Ì¡ÊJË¡Í{ËHÉPÊJÖäÓ%ÌHÊbÈ,ÌC̲ÑPØSÌHÌ¡Ñ,Ö×ÚIÔ�ÊJÈ,õ¸Î#ÏPÍHG ÊJË¡Ú¡Í(Ì¡ÑPØ^Ó�Ì¡Ñ,Í(Ú¡ÍJIJÈ,Í{Ó%Ì²Ö Ø^õ�ØSõ×ÜbÊJË¡Ö×Ì¡Ñ,ÝLK E Ç,þ,ÿNM¡íCêCÊJÌ¡Í

Ñ,Ê#G!Í{òJÍ{Ëdâ%̲ÑPØSÌC̲Ñ,Í�ØNòbÍpËkØSÜJÍ�ÏPÍ{ÑQØNò�Ö×ÊJË Ö×ÚCÍ$O,ÉQÍdÔ�Ì¡ÍNÎ�̲Ê�ÏPÍ�ÏQÍ{̡̲Í{Ë�ÏPÍdÔpØSÈ,Ú²Í0ÊSô�Ú¡ÉQØSË¡Ú²Ö×ÌzÐ�í

ÙIÙ�Ó\r%ëbëJî��

Page 9: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

� � 1�+.-�� �0�=E#" �="����\� � ��� � ������� " B �#E@)+� -

"��$ !�

"��$ !�

¬H_iOPc<LNV�W��0Y2TUMPs<MQ`dMQs<_¶[Z�¡c<s�[J`d_iMQs "��[Z<�0[%R,s7n�Vrq4V,ed[JLN_anµVlq´n�y+R�e{V%`�Mg� �\[JLN_a`N_¶[%Rgh fµMP_is�`SeJ�4¤¬H_iO � _ahihac�ep`dLSRg`dV,e�`d]<_zebm�£�]<V%LdV�"��$ !��Rgs�q ?r�$ !�rRgLdV+ep]<M,£�s¨_is©`d]<_is¦hi_as<V,e��²`N]vV%_iL>[JLN_a`N_z[�Rghf�MQ_is�`Se�R,LNV�[b_iLS[bhiV,e�R,s�q+eN«�c�RgLdV,eJm�LNV,e{f�V,[J`N_a��V%hiy��S¤I¥:]<V�T+Rgw�M,�I`N]<V#`{£�M��¡c<s�[b`N_iMPs�e(_¶e:e{_iTUf<hay`N]<V �NMQcv`NV%L�V%s4��V�hiMQf�V���RPe�ep]<M,£�s+n4y�`d]<_z[S¢�hi_as<V�¤/B��. !��_ze�Rgh¶epM�TªMQs<MP`NMQsv_z[Qm�Rgsoq´_a`Se�[JLN_a`N_z[�Rghf�MQ_is�`Se�R,LNV+V%_a`N]<V%Lr`N]<V´[J_iL\[JhiV,e#MPL�eN«�c�RgLdV,eU�²_k¤³V�¤amHMQsvhiy [JLN_a`N_z[�Rgh0f�MQ_is�`Se�M,�#MPs<V+Mg��`N]<Vª`p£�M

�:ì � ð �:ì ����� ð

��� �:ì ����� ð

�:ì � ð

¬H_iOPc<LNV>�$� "��^Z<�:_¶eTUMPs<MQ`dMQs<_¶[��kep]<M,£�s�q4MP`N`NVlqµ�GmCe{M+RgLdV�"��. ba'#�²Xße{]<_ �¡`dV,q�`dMU`N]vV�LN_aOQ]�`��q<RPep]<Vlqµ��RPe£�V%hihöRQe\! ` "��$ b '��¡Xße{]<_ �¡`dV,qULN_iOP]4` � �,E�c<f ��e{MQhi_¶qµ�S¤

ü¡êIÙCüzæ

Page 10: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

��� B �#$ A -����=� B=A �#/�����! #"� 'C-F/0)�C/ 1�%(' � �=E %(' A ������' )8- A % A T

"��$ !�

?r�. ö�

B��. !� C T+Rgw��."��$ !�_@D?r�$ !�N�"��. ö�

¬H_iOPc<LNV � �,B��$ !�\C±T+R,w��$"��$ !�G@D?r�. ö�d��_¶e�Rghze{M�TªMQs<MP`NMQsv_z[�¡c<s�[J`d_iMPs�e^�\¤ �ZMQ`dV�R,hze{M�`d]�Rg`�epMPTUV#Mg��`N]vV�[bLN_i`d_z[%R,h!f�MQ_as4`\e��¡Mg� "��. ö��RPe:£:V%hahCRPe+?r�$ !�d�:T+R%ys<MQ`xR,f<f�V,RgL>��ep]vMg£�s _isUOPLSR%y��:_as�B��$ !�S¤�ZV%s�[JVr£:V�]�R%��V�`N]<V�R,hiOPMQLN_a`N]<T&OP_i��V%s*n�V%haM,£�¤��xc<L�V%w�f<h¶Rgs�R,`N_iMPs�]oRQe�n�V%V�s*n�RQe{V,q�MQs`N]�R,`�Mg�p�xMQLNM,£�_a`N¯rRgs�q3n�R,]<s<_���e{V%V �V� n8T7����� n�V,[P¤(W4¤QW����¡MQL�RQq<q�_i`N_aMQs�R,hIq4V%`\Rg_ih¶e^�\¤WP¤ ��7)C(4��V' 7q@*!87 �.5��¤�¡MQLSfCß�)EFE/EG�*m<[JMPs�ep`dLNc�[b` � Y RPeu�¡MPhihaMg£xeq���R�� G!V%` � 1 C � YG] 7 6 4���' Y @*! Y �.5H6 4��! ` ' Y @ X ` ! Y �-8+�! @ X ��9;� Y�] 7��� ` ' Y = ��5�¡`N]<_¶e:_ze�R�epc<f�V%L\epV%`�M,�0`N]<Vr[JLd_i`d_z[%R,hµf�MP_is�`Se�Mg� � Y �S¤

�¡n!� 50MPs�ep`dLNc�[J` � Y n4yrLNV%TUM,��_is<O�Rghah<[bLN_i`d_z[%R,h4f�MP_is�`Se � @ X ��9;�/1�`d]�Rg`�RgLdV E#"#+ %9�=��'C-FEn�y+RgsvMQ`N]vV%L%m<_k¤³V�¤am _¸��� � 16@ X 1Q�/9;�/1�8 01(=L Rgs�q X 1 A X ¤

� ¤ �ZM,£ X 2 �*�%��[%Rgs n�V�VlRQep_ahiy�MQn<`\Rg_as<V,q´�¡LdMQT � 2 ¤� � ��� � ���� ���$ r���($��´ �� E�(�* �+�������� ���������$��(���

YZhi`d]<MQcvOQ]©`d]<V�noRQep_¶[�_zq�V,RUnµV�]<_is�q�`N]<V+R,n�Mg��VªRghaOQMPLN_i`d]<T§_ze�M,��V%LrR « c�R,LN`dV%Lr[JV%s�`Nc<Ldy*MQhzq� � 7��Q�/��m�_i`�]�RPes<MP`�n�V%V%s Rgf<fvhi_iVlq´`dM�`N]<V�OPV%s<V%L\RghC¢�s�Rgf�edRQ[S¢Uf<LdMQn<haV%T*m�`NM�`d]<V�nµVlep`�Mg�áMQc<L¢4svMg£�haV,q4OPV�¤I}é`C_¶eC[JhiVlRgLC`N]oRg`�~V%T´RgLN¢veHW� � RgLdV�ep`d_ihahQ�PRgha_zq!mPRQeC_ihahic�e{`NLSR,`NV,q#_as�¥IRgnvhiV,e�W�Rgs�qr�4¤

ÙIÙ�Ó\r%ëbëJî��

Page 11: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

� � 1�+.-�� �0�=E#" �="����\� � ��� � ������� " B �#E@)+� -

�f W � � � W � T � � W�� WQW W�� W � WJ�

W � � � � T T T T T Wb� WJ� Wb� WJ� WJ�� � � � � � � � W�� W�� W�� W%� �,� �g� �g�

� � � � � � � � W�� W�� WiT W�T �,� �g� ��W� � � � � � � � W�� W�� �,� �g� �,� �g� � �

¥HR,n<hiV�W"����Rghac<V,e�M,� X"Y �^Z<�#�¡MQL�R*ep_aTUf<haV�OQV%s<V�LSRgh�¢�s�R,f�eNRP[^¢�f<LNMPn<hiV�Tl� � C �vm\� C§WJ�vm')# C W$@N�+@S�$@�W%�$m�!$#BC T @��$@\�$@S�,�+ep]<M,£�s<_as<O�`N]<V�TUMPs<MQ`dMQs<_¶[J_i`{y�¤fW �VW�m TF� �¸W%��miWJ�"�� � �vm �i� � �4maW%��� �¸W%�4mä�g�"�� � �vm �i� � �4mä��� � �4miW���� � W��4maW�T/� � W��4m×�,��� � WJ�vm×�"W��� � �vm �i� � �4mä��� � �4miW���� � W��4mä�g��� � Wb�<m � ���

¥HR,n<hiV>�$�0¥:]<V�f�R,_iLSe�c�e{V,qU`NM�LNV%f<LdV,epV�s4`�`N]<V�V%wvRgTUfvhiVxMg��¥IRgn<haV�WQ¤�ZM,£:V%��V�L%m,`N]<V�f<LdV,epV�s�[JV�Mg� X�Y MQs�`N]<V�Ld_iOQ]�`�]�R,s�qUe{_zq4V�M,���k� �If<LdV,[Jhicoq4V,e�RZsoRg_i��V�V�w4`dV%s�ep_aMQsCmep_as�[JV�s<M,£�m � Y q4V%f�V%s�q<e��²LdV,[Jc<L\ep_i��V�hiy���MPs _a`SepV�h �d¤�¥:]<V%LdVJ�¡MQLdV�£�V�s<V�V,q `dM¨q4V%��V%haMQfßRgsRghaOQMQLd_i`d]<T®`d]�Rg`u[JMQsoep`NLdc�[J`\e(_i` %9�=/ $0-&+.-q� ' ��� �6��coep_isvO�`N]vV#f�RgLd`N_¶Rghihay�[JMQTªf<c<`NVlq�� Y ¤0¬<MQL�`N]<_¶eLNV,RPepMPsCm�£:V:LdV%f<LdV,epV%s�`C`N]vV(�¡c<s�[b`N_iMPs�RQe�Rxep`dLNV,R,T M,��f�Rg_aLSeHL\Rg`d]<V%L�`d]�Rgs>R#epV%`�¤�¬<c<Ld`N]<V%LdTUMQLdV�m£:V�T+Rg_as4`\Rg_as7`{£:M RQq�_i`N_aMQs�R,h0_is��QR,LN_¶Rgs�`SeZ_as�MPc<L�LNV%f<LdV,epV�s4`\Rg`N_aMQs �#`d]<V�f�Rg_aLSe�RgLdVUe{MQLN`dV,q*_is_is�[bLNV,RPep_isvOUMQL\q4V%L#M,��£:V�_iOQ]�`Sebm$Z�m0��R,s�q7]<V%so[JV�Rgh¶epMU`d]<V�RQedepM�[J_¶Rg`NVlq!m X 3×eS�GmIRgsoq `d]<V�Z83×e#R,LNVn�MQc<s�q�V,q7n4y �,m<`N]<V�¢�s�Rgf�edRQ[S¢+[%R,f�RQ[J_a`{y�¤

G!V%`�m!�¡MQL f C WDE/E/E_� m���������n�VU`d]<VªepV,«�c<V%s�[bV,e#`N]�R,`�LNV�f<LNV,e{V%s�` X�Y �^Z<�S¤���VUs<M,£ epyvep�`NV%T´Rg`N_¶[%Rghahiy¦q�V%LN_a��V*R��¡c<s�[J`d_iMPs�Rgh#fvLNMQOPLSR,T `N]�R,`�MPf�V%LSR,`NV,eUMQs6epVl« c<V�s�[JV,e�M,��f�R,_iL\eURgs�q[%Rgh¶[Jc<h¶Rg`NVle��������¡LNMQT ����� � ����¤���Vªc�epV�`N]<V��¡MQhahiM,£�_isvO7s<MP`SRg`d_iMPs��¡MQLr£�LN_i`d_is<O e{c�[^]�f<LdMQ�OQL\RgT+eq�:e{V,« cvV%s�[JV,e�R,LNV>q4V%hi_aTU_i`dV%q�n�yUn<LSRP[JV,e���e{M<m�����q�V%s<MQ`dV,e�`N]<V�V%TUfv`pyªepVl« c<V�s�[JVQ�_m������q4V%s<MP`NV,exR�epV,«�c<V%s�[bV#£�]<M�e{V.)8-F�#E�_¶e:`N]<V�V%haV%TUV%s�`�� m�Rgs�q+£�]<M�e{V '4�#%(�!�¡_�¤³Vù¤im4`d]<V�LNV,e{`�Mg�0`d]<VepV,«�c<V%so[JVQ�I_ze0`N]<V�e{V,«�c<V%s�[JVùm��+m�`N]<V�V%hiV%TªV%s4`\eçM,�IMQc<Lxe{V,«�c<V%s�[JVleá_asU`N]v_ze(foRgf�V%L�R,LNV#foRg_iL\e:Mg�_is�`NV%OPV%LSebm������ � �²£:V�coepV�n<L\RQ[S¢�V%`Se�¡MPL�[JMPs�ep`dLNc�[J`d_is<Oªf�Rg_aLSe^�\¤�¬<c<s�[J`d_iMPs�Rgf<f<ha_z[%R,`N_aMQs*c�e{V,e

ü¡êIÙCüzæ

Page 12: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

��� B �#$ A -����=� B=A �#/�����! #"� 'C-F/0)�C/ 1�%(' � �=E %(' A ������' )8- A % A �

f�RgLdV%s�`N]<V,e{V,eZ�¡V%O<m���� ��������� �� ��_ze:`d]<V#LdV,epc<ha`:M,�0R,f<f<hiy�_isvO�`N]vV��¡cvs�[J`N_aMQs��� ��� ��`NM�`d]<V#`{£:MRgLdOQc<TUV�s4`\e���Rgs�q��µ¤C��VUq4Vb·�s<V��¡c<s�[J`d_iMQsoe�V,«�c�Rg`d_iMPs�Rghahiy�mCc�e{_is<O epV�f�RgL\Rg`NVªV,« coRg`N_aMQs�e#�¡MQLq4_ ? V%LdV%s�`�f�Rg`d`NV%Lds�eZMg��`d]<V�_as<f<c<`\e�mµ�¡MPL#V%wvRgTUf<haV�m4`d]<V��¡MPhihaMg£�_as<Oªepf�V,[J_¸·�V,e�`N]<VrnµV�]�R%�4_aMQL#M,�`N]<V�������� �#�¡c<s�[J`d_iMQsöm<£�]<V%s+V%_i`d]<V%L�Mg�0_a`Se:_isvf<c<`Se:_¶e:`N]<V�V%Tªf<`{y�epV,«�c<V%s�[bV �

����������� ��� � � ��� ������������ ��� ��� ��� �

�xc<LUq�V%LN_a�QR,`N_aMQs¦_ze�n�RQe{V,q MQs¨`N]<V+�¡MQhahiM,£�_is<O�e{V%LN_aV,e�Mg��haV%TUTªRg`SR�m�£�]<_z[S]©�¡MQhahiM,£ q4_aLNV,[J`dhiy�¡LNMPT­~�V%T+R,LN¢veZW� � m `N]<V>q4_zed[Jc�eNe{_iMPs7_is `N]<V�f<LdV%��_iMQcoeZe{V,[J`N_aMQsCm�R,s�q7`N]vV�_is��PRgLd_zRgs�`Se:M,��MQc<LLNV%fvLNV,e{V%s4`\Rg`d_iMQsö¤� � � �©� � ' � X�Y �[Z<� % A $0- B $D- A -q��'C-FE:K/� ' )8- A -��1=-q�=/I- � ���� � ' )8-q� � ! Y ` X�Y �[Z&b ' Y � % A$0- B $D- A -q��'C-FEeK/����������� �2������� � � �� � � ��� ������������������� �&% )8-0$0-� �!����� � � ���"� � ��� � ���#� �$� ���� �!����� � � ���"� � ��� ����� ��� ���%� �&�� ��'�� (��*) ���

��+ ��� ) � �!'�� � �' ���,������� � � ������� � ��� ���-� �

� � � �©��% ' ��"��. !� � �=E&?r�$ !� �#$0- + " �="�'4" �=% / � 1��=/I'4% " � A $D- B $0- A -���' -FE K/� ����� �=E �!.��$0- ACB -F/I'4% �@-D� �7� '*)8-q� B��$ !�lC T+Rgw��."��. ö�_@D?r�$ !�N� % A $0- B $D- A -q��'C-FEdK/� �©���I�I� ��/ � �!0 � � " ���� ������� ����� �!. � � E�-[�p� -FE � A � "��(� " % A21

����������� ��� � � ��� ������������ ��� ��� ��� �������������� ��� � �� � ������� ���3. � �.���� ��. �4�� ���$5 � . ) ���������� � �4��� ��� ��� ��� � ���3. � �.���� �!. ���+ ��� �2 � .65 ��� ) ���3. �� .�� �4��� ��� ��� ���������� � � � ��� �!. ���+ ��� �2 ���7� � . ) ��������8 � ���"�� � . � � �9���3��� ��� � ��� ��. �

�ZMQ`dV�`N]oRg`x_is7`d]<V�h¶RQe{`#[Jh¶Rgc�e{V�R,nµM,��V�m�`N]vV�]vV,RQq7M,�0n�MQ`N]�e{V,«�c<V%s�[JVle_¶eZ[JMPs�epcvTUV,q+Rgs�qR�e{_is<OPhiV�MQcv`Nf<c<`xV%haV%TUV%s�`0_ze:f<LdM�q4c�[JV,q ¤�¥:]<_ze�V%s�e{c<LNVle:`N]�R,`Z`d]<V�MPc<`Nf<cv`Zf<LdM�q4c�[JVlq�n�yU`N]<V��� �����+_¶e A ' $&% /I' �6��_is�[bLNV,RPep_isvO*_is©_a`SeSZ��PR,hic<V,ebm:R��kRP[J`�`N]oRg`�£�_ihih�n�V�coepVJ�¡c<h�hzR,`NV%L�¤©¥:]�c�eJm`N]<Vx�¡c<s�[J`d_iMQs:������� �rRQ[S]<_iV%��Vleá`d]<V�V,«�c<_i�PRghaV%s�`(M,�)nù`NV%f �4�kR �0M,�0`N]<V�epf�R,LSepV>�NMùW�R,hiOQMPLN_a`N]<T*¤�ZM,£�m�RghahH`d]�Rg`x_ze�hiVJ�¡`�_¶e`dMULNV�TUM,��VZ`d]<V�q4MPTU_isoRg`NVlq´V�hiV%TUV�s4`\eJ¤0~�V,[%RghahC`N]�R,`#R�f�R,_iL� Z 1^@ X 1Q�q4MQTª_is�R,`NV,e�� Z @ X ��_ ? Z<1D= Z � X 1 A X mC_�¤³Vù¤im�_i`x]�RQe�epT´RghihaV%Lr�²MQL�V,« coRgh²�u£:V%_aOQ]�`#n<c<`#h¶RgLdOQV%L�²MPL�V,« coRgh²�0fvLNMg·o`%¤ U:V,[�Rgc�e{V#`N]<VrMQc<`df<c<`xMg�;��� ��� ��_ze:_as�MPLSq4V�LZM,�0_is�[bLNV,RPep_isvO�£:V%_aOQ]�`SeJm�`N]<Vq4MQTª_is�R,`NMQLª�²_¸��Rgs�yµ��M,��R,s V�hiV%TUV�s4`#T�c�e{`�n�V+MQsvV�M,�#_a`Se B $0-FE�-F/I- ADA "#$ A %9� ' )8- A -��1=-q�=/I-\¤�ZV%s�[bV#£:V#]oRl��V�`d]<V#�¡MQhihaM,£�_is<Ov¤<>= ��? � � � ���>)8-�� "�� � " % %9�� B $F"D #$ �#+ /D"#+ B 1#' - A � Y � $F"#+ � Y�] 7 �

���������A@ ��+3��� ���B���3��� ��� � ��� � � ���C� �!����� � � ������� �� �� ��� ��� ������� ����� ���:� ���D� �

% )8-&$D-ÙIÙ�Ó\r%ëbëJî��

Page 13: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

W%� � 1�+.-�� �0�=E#" �="����\� � ��� � ������� " B �#E@)+� -@ ��+�� � � � ��� �:+�� 8 � ���7� � �@ ��+�� � � ��� � �� ��� � �:+�� 8 �2���7� �2 (A+ �,8 �2� ) ����� ��� @ ��+3� ��� � ������

�!+���� ) @ ��+�� � � � ���:+ �,8 �2���

�ZMP`NV0`N]oRg` �������:M�[%[bc<LSeHMPs�`d]<V�LN_aOQ]�`C]�Rgs�q�e{_zq4Vùm�epM#`d]<V:fvLNMQOPLSR,T q4VJ·os<V,eC`N]<VuepV,«�c<V%s�[bVLNV,[bc<LSe{_i��V%hay�¤C¬<c<LN`d]<V%LdTUMQLdV�mQ`N]vV#e{`NLNco[J`Nc<LdVZM,�I`N]<Vxf<LdMQOQL\RgT�_ze�R�e{`SR,s�q<RgL\qUMQs<V#`d]�Rg`0M�[%[bc<LSe_isUh¶Rg¯%y��¡cvs�[J`N_aMQs�R,h!h¶Rgs<OPc�RgOPV,e��³YH� Tl�4m�¬H� Tl����m�Rgs�qU_¶eáM,�¡`NV%sªc�epV,q�`NM�T´Rgs<_af<c<hzR,`NVx_is4·os<_i`dVepV,«�c<V%so[JV,e��²£�_a`N]<MPc<`C]�R%��_is<O�`dM�V%�PRghicoRg`NV0`d]<V%T7�\¤C¥:]<V�·�s�R,h�epMQhac<`N_aMQsrMg�v`N]<Vx�¼�¡MPLN£uRgLSq#f<]oRQepVMg��`N]<VP��OQV�s<V%LSR,hC¢4soRgf�edRQ[S¢�f<LdMQn<haV%T�_ze(MPn<`SR,_is<Vlqª�¡LdMQT � � 8��4m�£�_i`d]U`N]vV�_as<_i`d_zR,hi_i¯lRg`N_aMQs�`d]�Rg`� � � � � ���v¤

� � � $, ������� � U ��:�U +� � �:�:��) �®���7�x��(�����

}�`#_ze#£:V�hihI¢4s<M,£�s � ��R,] T%� ��`N]�R,`�R+e{`NLNVlRgT �¡cvs�[J`N_aMQs�R,h�f<LdMQOQL\RgT§[%R,s�n�V�_aTUf<hiV�TUVJs�`NVlqURQeR�s<V%`{£�MQLN¢ªMg��f<LNM�[bV,eNe{V,eJm [JMQTªT�c<sv_z[bRg`N_as<O�RPepy�s�[S]<LNMPs<MQc�e{hiy+`N]vLNMQcvOQ]7·<�¡MUnvc�? V%LSeb¤ nùc�[^] Rs<V%`{£:MPLN¢�[%Rgs*n�V�epyvep`dV%T+R,`N_z[�RghihayU[bMQs�e{`NLNco[J`NV,q7noRQepVlq7MQs<hay7MQs*`d]<V A ��� ' �#/I'4% / A '4$I1 /I'41�$D-�Mg�`N]<Vrf<LNMPOQL\RgT*¤�¬<MPLZV%wvRgTªf<hiV�m�`d]<V�f<LdM�[JV,edepMQL�`N]�R,`Z_aTUf<hiV�T�V%s�`Se�MPc<LZfvLNMQOPLSR,T­`NMª[JMPTUf<c<`dV� �����¡LNMPT ���� ��� ��_¶e:[JMPs�ep`dLNc�[J`dV,q�RQeá�¡MPhihaMg£xeb¤��xc<L0MQc<`df<c<`:_¶e(`d]<VZLdV,epcvhi`0Mg��R,f<f<hiy�_isvO�`d]<V�¡c<s�[J`d_iMPs7@ ��+3��� �*�²£�_i`d]¦R7ed[%Rgh¶RgLrf�RgL\RgTUV%`dV%L%mI���#`NM `N]<VªMQc<`df<c<`�M,��R ������� �Uc<s<_a`%¤ ¥:]<VhzR,`N`NV�L�`SRg¢�Vle:`p£�M�R,LNOQcvTUV%s�`SeJm�MQs<V�M,�0£�]<_z[S]U_¶e:`N]<V�_isvf<c<`�e{V,«�c<V%s�[JVùm<Rgsoq´`d]<V�MQ`d]<V%L�_ze:`d]<VMQc<`df<c<`0Mg�çRgsC������� ���2�#c<s<_a`%¤�¥:]<V�_is<fvc<`�Mg� `d]<_ze�_zeC_i`\epV%h¸� `N]<V�MQc<`df<c<`�epV,«�c<V%so[JV ���������²£�_a`N]`N]<V�f�Rg_aL ��� ������R,`:_i`\e�]<V,RQq��S¤\�ZV%so[JVZ£�VZsvV%V,q�R�R��¡V�V,q4n�RP[^¢rhiM�MQf+£�]<_¶[^]ª[JMPs�ep_¶ep`Se0Mg�çR�·<�¡Mn<c�? V%L�m<_is<_a`N_zR,hi_a¯%V,q�£�_i`N] �����-�����kepV%Vr¬H_aO��4�S¤

G!M�MP¢4_as<O�Rg`r`N]<V+q�VJ·�s<_a`N_iMPs�e#Mg��`N]<VlepV�`N]<LdV%V��¡cvs�[J`N_aMQs�ebm�£:VªepV%Vª`N]�R,`>@ ��+3��� �7[�Rgs©n�V_iTUfvhiV%TUVbs�`NV,qUc�e{_is<O R7e{_iTUfvhiV��d`N]<LdV,ep]vMQhzq ��LNV�OQ_ze{`NV%L�£�]<_z[S]�_¶e#_is<_a`N_zR,hi_a¯%V,qU`NM��4¤U}²�u`N]<V X�PRghicvV�MPsU`N]vV�_as<f<c<`�f�Rg_aL:_¶e(OQLdV,Rg`dV%L�`N]oRgs+`N]<V�`N]<LdV,ep]<MPhzq!m�_i`�_ze(foRQeNe{V,qU`N]<LdMQc<OP]©�¡c<f q<Rg`d_is<O`N]<Vr`N]<LdV,ep]vMQhzq7LdV%OQ_¶ep`dV%L�`NM X �Sm�MQ`d]<V%LN£�_¶epVr_i`x_zex[JMQs�e{c<TUV,qU£�_a`N]<MPc<`#f<LdM�q4c�[J_as<O+Rgs MQc<`df<c<`�²£�VxeNR%y�`d]�Rg`�_a`H_¶e � � 'C-&$D-FE�"#1#'¼�\¤0¥:]<V ��� ������cvs<_i`I_ze�e{`NL\Rg_iOP]4`{�¡MQLd£�RgL\q!m�Rgs�q�_¶eH_iTªf<hiV%T�Vbs4`dV,q£�_i`d]�`{£:M�[JMQTªf�RgL\Rg`NMPLSe��²`d]<VªepV,[JMPs�q*MQs<VU_¶e#c�epV,q*`NM�[JMQTªf�RgLdV X �PRghac<V,e#_is [%RQe{V�`d]<V�Z 3äeRgLdV�V,«�c�R,h²�S¤ ��������� �2�U_ze#_iTªf<hiV%T�Vbs4`dV,qUep_aTUf<hay�n�y*RUf�R,_iL#M,�xRPq<q4V%L\eJmIRgs�q�R+[JMQTªf�RgL\Rg`NMPL�¡MQLxOQV%svV%LSR,`N_isvO�Rgs �dV%s�q+Mg�áepV,«�c<V%s�[bV���`SR,O7�¡s<MQ`xe{]<M,£�s7_is+`d]<V#·�OQc<LdVQ�S¤

�ZM,£�mQ`dM�_iTUf<haV%T�V%s�`C`N]<V�LdV,[Jc<LdLNV%so[JV#�k� �Sm�£�V�s<V%V,q ��epc�[S]�f<LdM�[JV,eNe{MQL\eJm<[bMQs<s<Vl[J`NV,q�_is�Rhi_as<V,RgLxR,LNL\Rly��²_ �I�¡V%£�V%L:f<LdM�[JV,edepMQL\e#RgLdVrRl�PR,_ihzR,n<hiVùm4`N]vV�R,hiOPMQLN_a`N]<T [%Rgs+n�V�_aTUf<hiV�T�V%s�`dV,q�n�y[JMQs�·�OQc<Ld_is<O�`d]<V%TERPe�RZLN_as<O�R,s�q�c�ep_as<O#T�c<hi`d_if<haVHfoRQeNe{V,e^�\¤0°0RQ[S]�f<LdM�[JV,eNe{MQL�_¶e�[JMPs<s<V,[J`dV,q#`NM`N]<V�s<V�w4`�`d]<LNMPc<OQ]�Rgs "#1#' B 1 ' K�1�� -0$^m�R,s�q�]�RPeZR�hiM�[�Rgh!�¡V%V,q�n�RQ[S¢�nvc�? V%L#q�V,eN[JLd_in�V,qUR,n�Mg��Vù¤}�`r[%Rgs nµV´ep]<M,£�s¦`N]�R,`�e{c�[^]�R�s<V%`{£�MQLN¢*M,�xf<LNM�[bV,eNe{MQLSe�_¶e�R B �#$D'4% ���(�6� /D"#$&$0-F/I'�_aTUf<haV%�

TUV%s�`SR,`N_iMPs©Mg��`N]<V+OQ_a��V%s¦f<LNMPOQL\RgT�X _ �x`N]vV�fvLNMQOPLSR,T `NV�LNTU_as�Rg`dV,eJmI`N]<V%s¨`N]<V+s<V�`p£�MQLd¢©Mg�f<LNM�[bV,eNe{V,e�R,hzepM+`dV%LNTU_as�Rg`dV,exRgs�q*f<LNM�q�c�[JV,e�`N]<V�edRgTUV��PRghac<V,eb¤�YZhih�MQc<LrRgLdOQc<TªV%s4`\eZ_is*`d]<Vf<LNV��4_aMQc�e�epV,[J`d_iMPs+q4V,R,hi`0£�_i`d]Uf�RgLd`N_¶RghC[bMQLNLdV,[J`ds<V,eNe�M,��`d]<VZfvLNMQOPLSR,T*m<R,s�q�£:V�s<V%V,q�`NM�f<LdM,��V`N]�R,`#`N]vV�fvLNMQOPLSR,T­Mg�(¥:]<V%MQLdV%T&Wrq4M�V,eZ`dV%LNTª_is�R,`NV�¤�¥çMªep]<M,£E`N]v_ze:£:V�s<V�V,q�`dM�f<LdM,��V�MPs<V[JLNco[J_zR,ho�kRP[J`%m�s�R,TUV%hay�`d]�Rg`�_i`0_zeH�¡LdV%VZM,��q4V,RPq4hiM�[S¢+�²n�V,[%R,c�epVxMg�I`d]<VxLNV,[JcvLSep_a��V�s�Rg`dc<LNVxMg�I`d]<V

ü¡êIÙCüzæ

Page 14: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

��� B �#$ A -����=� B=A �#/�����! #"� 'C-F/0)�C/ 1�%(' � �=E %(' A ������' )8- A % A WPW

���� ÿ �xc<`Nfvc<`#¬�}p¬ �

G!M�[�Rgh�¬�}{¬ �

��� �������

���

K �� �FM

�7V%LdOQV ¬H_ahi`NV�L

¬H_iOPc<LNV��8�\-x_iLNVl[J`�]�RgL\q4£�R,LNV�_iTªf<hiV%TªVJs�`SR,`N_iMPs�M,��`d]<V�f<LNMPOQL\RgT Mg��¥:]vV%MQLdV%T&WQ¤f<LNMPOQL\RgT*m<`d]<_ze:_¶eZR�q4_ze{`N_as�[J`:f�MùeNep_an<_iha_i`{y��S¤���V�£�_ihahCe{]<M,£2`N]<_¶en�yUf<LdM,�4_as<O�R�haM,£:V%L�n�MQcvs�qMQs+`N]vV�e{_i¯%V�M,��`d]<V�n<c�? V%LSeb¤Y epVl[JMQs�q�_iTUf�MPLN`SR,s4`IRPepf�V,[J`�_zeC`N]<V�TUV%TUMPLNy�LNVl« c<_aLNV%TªV%s4`�mS_�¤³Vù¤im%`N]vV�ep_a¯%V:M,��`N]vV:n<c�? V%L\eJ¤

¬<MQL0R#e{Mg�¡`{£�R,LNV�_aTUf<hiV�T�V%s�`SR,`N_aMQs#MPsURZOPV%s<V%L\Rgh<fvc<LNf�M�e{VZT´RQ[S]<_is<Vùm%`N]<_¶eç_¶eHs<MQ`�RZha_iTU_a`SR,`N_iMPsC¤�ZM,£:V%��V�L%m4MPc<Lx`SRgLdOQV%`x_zexR�q4V,q4_¶[%Rg`dV,q � G>n }(f<LdM�[JV,eNe{MQL�mCRgs�q7_a`�n�V,[JMQTªV,e�[JLNco[J_zR,hC`NM�f<LNM,��V`N]�R,`Z`d]<V�n<c�? V%L\eZR,LNV�n�MPc<s�q4V,qU�¡LNMPT­R,n�Mg��Vù¤:¥:]<V��¡MQhahiM,£�_is<O�`d]<V%MPLNV%T R,s�ep£�V%LSe�`N]vV,epV�`{£:Mf<LNMPn<hiV�T+eá�¡MPL�`N]<V#�¡V%V,q�n�RQ[S¢�nvc�? V%L%¤

<>= ��? � � � %���' � �+� ' % +.-��C- 2 /I- B '���' '*)8- -q�=E��2� '*)8- �=1 + KI-&$ " � -D�(-&+.-���' A %9��' )8-.� "@/D�����1=-&1 - " � ' )8-Sf( ' ) B $ ";/I- ADA "#$�% A KD"#1��=E�-FE � $F"#+ � KD"��;-�K/�L' Y � � �,E � $ "#+ KI-D� " % K/���<���� ? ?�� � G!V�`%m0Rg`�R,s4y�_isoep`SR,s4`�m(`d]<VUhaM�[%Rgh�n<c ?!V�L�[JMQs�`SR,_is©V%haV%TUV%s�`Se � Zi7�@ X 7 ��m EFE/E/� Z��9@ X �Q�*m`d]<V�n<c ?!V�L�haV%s<OP`N]7_¶eZ`N]�c�e��k¤�YZh¶epM<m hiV%`x`N]<V��PR,hic<Vr_is*`N]vV�`N]<LdV,ep]<MPhzq7LdV%OQ_¶ep`NV�LZM,�:`d]<V@ ��+3� ���#c<s<_a`0nµV X 1 m<Rgsoq�hiV%` � Z @ X �µn�Vx`N]<Vx�PRghac<V�Rg`0`d]<VZ]vV,RQq�M,�C`d]<V#_isvf<c<`�epV,«�c<V%so[JV�¤�ZM,£�m�£:V�]�R%��V�`N]<V#�¡MQhahiM,£�_isvO��¡MQc<Lx[%RPepV,eb¤WP¤ ��� ��� ��e{V%hiVl[J`Se!`d]<V:haM�[%Rgh��PRghicvV�m8� Zi7/@ X 7 ��m,£�]<_z[S]�_¶e(�kR ��·�hi`dV%LNVlq�MPc<`%mPMQL��²n!� f�RQedepV,q`d]<LNMPc<OQ] n4y @ ��+�� � �µ¤

��¤ ��� ��� ��epV%haV,[J`SeC`N]vVZ_as<f<c<`��PR,hic<V�m�� Z @ X �kmQ£�]<_z[S]�_ze���R �C·�ha`NV%LdV,q�MQcv`%m�MQLx�²n �Cf�RQedepV,q`d]<LNMPc<OQ] n4y @ ��+�� � �µ¤

ÙIÙ�Ó\r%ëbëJî��

Page 15: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

W%� � 1�+.-�� �0�=E#" �="����\� � ��� � ������� " B �#E@)+� -}�s [%RQe{V+WQ¤×R�mp� Zi7/@ X 7 ��_¶e�q�V%hiV%`dV,q´�¡LdMQT `N]<V��¡LNMPs4`#M,��`d]<V�n<c�? V%L�mHR,s�q*`N]<Vªep_a¯%V�M,��`N]vVhaM�[%RghIn<c�? V%L�q4V,[JLdV,RQe{V,e:n�y*WQ¤�}�s*[%RPepV�WQ¤ nCmB� Zi7/@ X 7 �C_¶eZq4V�hiV%`dV,q��¡LNMPT�`N]vV��¡LNMPs4`�M,�0`N]vVn<c ?!V�L%m Rgs�qa� Zi7 ` ' Y @ X 7 ` ! Y �C_ze�f<h¶RQ[JV,q+R,`Z`d]<V�V%soq!m�epMU`d]<V�n<c�? V%L�ep_a¯%V�LNV%T+R,_is�e �k¤}�s [%RQe{Vr�4¤×R�Rgh¶epMvm<_i`�LNV�T+Rg_as�e�`N]<VreNR,TUV��¡`N]<V�_isvf<c<`��PRghac<V�m � Z @ X �C_¶e�ep_aTUf<hiy�q�V%hiV%`dV,qµ�\¤¬H_as�Rghahiy�m _is�[%RPepVª�4¤³n�_i`�_is�[JLdV,RQe{V,e#n4y W+�G� Z @ X ��_¶e�fvhzRQ[bV,q*Rg`�`N]vV�V%soq7Mg��`d]<V�n<c�? V%L%m£�_a`N]<MPc<`x[^]oRgs<OP_is<Or`N]<VZ�¡LdMQs�`J�\¤���Vxs<M,£2[bMQs�e{_zq4V%L�[%RPepV�WP¤×R�`dM�ep]vMg£6R�haM,£:V%L0n�MQc<soq!mR,s�q7��¤³n7`dM�ep]<M,£ER,s7c<fvfµV�L�nµMPc<s�q!¤�ZM,£�m<`d]<V#�kRQ[J`�`d]�Rg`�`d]<V��QR,hic<V�_as�`d]<V#`d]<LNV,e{]<MQh¶q�LdV%OQ_¶ep`NV�L:_ze X 1�TUV,Rgsoe(`N]oRg`x`N]<V%LdV#_zeR�f�Rg_aL�� Z<19@ X 1V�km<_is+`N]vV�haM�[%RghCnvc�? V%L��¡£�]<_z[S]U]�RPen�V%V�s�foRQeNe{V,q�`d]<LNMPc<OQ]�e{MQTUV�`N_iTªVZ_as`d]<V�f�RQe{`#�%�S¤�}�s�[%RPepV+WQ¤äR4m X 7 ` ! Y = X 10�²n�y*q4Vb·�s<_i`d_iMPs7Mg��n�V%_as<OU·�hi`dV%LNV,q+MQc<`b�SmCR,s�q`d]4c�e#`d]<V�foRg_iL � Z<19@ X 1V�0_ze�R A 1 /D/I- ADA "#$ZM,��� Zi7q@ X 7 �k¤ �ZV%so[JV�m!£�]<V�s<V%��V%Lx`N]<V�n<c�? V%Lre{_i¯%Vq4Vl[JLNV,RPepV,ebmµ`d]<V%LdV�_¶eZR,`ZhaV,RQe{`ZMPs<V�MP`N]<V�LZ�PRghac<V�_is `N]<V�hiM�[�RghIn<c�? V%Lx`N]�R,`#]�RQe�s<MP`#y�V%`n�V%V%s�[JMQsoepc<TUVlq!¤�ZM,£�m4�¡MPL#[%RPepVr�4¤ nCm<£:V�]�R%��V�`d]<V#�¡MQhahiM,£�_is<O�[bMQs�e{`NLSR,_is�`Seq�

Zi7 ` ' Y � ZZ A Z 7 ` �¥:]<V�·�LSe{`#[bMQs�e{`NLSR,_is�`�_ze:n�V,[%R,c�epV � Z @ X �C_ze:`d]<V�£�_is<s<V�L%m<£�]<_ahiV�`N]<Vre{V,[JMQsoq´_¶en�V,[�Rgc�e{V`d]<V�MQc<`df<c<`xepVl« c<V�s�[JV#_¶e:TUMQs<MP`NMPs<_z[#R,s�qU`N]<V�LNV�R,LNV �8b¨W#V%hiV�TUV%s�`SeHn�V%`{£:V�V%sI� Zi7/@ X 7 �R,s�q � Z @ X �k¤ �xV%s�[JV�m ��c ' Y ¤ nù_is�[JV�`N]vV�nvc�? V%L�_ze�_is<_a`N_zR,hi_a¯%V,q7£�_i`d]¦`N]<V+e{_is<OPhiV%`dMQsCm� �$@S�i��m<_i`\e:hiV%svOQ`N]+_¶e ���6% � � A nµMPc<s�q4Vlq´�¡LNMPT Rgn�M,��V�n4y ' Y ¤50MPs�[JV%Lds<_is<O*`d]<V+e{_i¯%VUM,��`N]vVUMQc<`df<c<`�n<c�? V%L�m(MPn�epV%Ld��VU`N]oRg`�`N]<VUfvLNM�[JV,edepMPLSe�RgLNV [JMPs<�

s<V,[J`dV,q ha_is<VlRgLNhay�m:MPs<hiy¦`N]vLNMQcvOQ]ß`N]<V,e{V*n<c�? V%L\eJ¤E¥:]<_¶e�TUV,R,s�e�`d]�Rg`ª`N]<V���M,£ M,�>q<Rg`\R�_¶ec<s<_¶q4_iLdV,[J`N_aMQs�R,h�¤ �ZM,£�m _¸��RgsUMPc<`Nfvc<`�n<c�? V%L�_zeH�¡c<hihkm�`N]<V#fvLNM�[JV,edepMPL�_zeH�¡MQL\[JV,q�`dM�£�R,_i`�¤\�ZM,£��V%��V%L�m £�Vr[%Rgs+e{]<M,£ n�y+e{_iTUf<haV�_is�q�c�[J`N_aMQsU`d]�Rg`�_a`Se0MQc<`df<c<`xn<c�? V%L:£�_ahih V%��V%s�`Nc�R,hihiyrn�V,[JMQTªVs<MQsv�¼�¡c<hah���RPeNepcvTU_is<O `N]�R,`�`N]<V+]<Mùep`�_¶e�[JMQs�`N_as4c<MPc�ephay©[bMQs�e{c<TU_isvO*q<R,`SR��¡LNMPT�`N]vVUMQc<`df<c<`n<c�? V%L#M,��`N]<VrhzRQe{`ZfvLNM�[JV,edepMPLJ�S¤�¥:]<V�fvLNM�[JV,edepMPL�_¶e`d]4coe_¶q4hiV�MQsvhiyU�¡MQL�R�n�MQc<soq4V,q*s4c<T�n�V%LMg��e{`NV%f�ebm<R,s�qU`N]<V%LdVZ_¶e�s<M�f�M�edep_an<_iha_i`{y�Mg��q4VlRQq4haM�[^¢ ¤�¥:]<V�MQc<`df<c<`:nvc�? V%L�e{_i¯%V�[%Rgsvs<MQ`xR�?!Vl[J``N]<Vr[JMPLNLdV,[J`NsvV,eNe0Mg��`N]<V�_iTªf<hiV%T�V%s�`\Rg`N_aMQsCmPn<c<`�MQsvhiy�`N]<Vrepf�V%Vlq �¡hzR,`NV%s�[byµ�\¤�}�sUf<L\RQ[J`d_z[JV#`d]<Vep_a¯%V [%Rgs¦n�V*q4V�`NV%LdTU_is<Vlq n�y©V%w�`NV%soep_i��Vªep_aT�cvhzRg`d_iMPsC¤ �xc<L�f<LdV%hi_aTU_isoRgLNy*LdV,epcvhi`Se�_as�q4_¶[%Rg`dV`N]�R,`#R���V%LdyUe{T+Rghahµs�c<T�n�V%L#�¡`p£�M�MQLx`N]<LdV%V#LdV%OQ_¶ep`NV�LSe^�0_¶e:c�epcoRghihay+epc�¹+[J_aV%s�`%¤

� "� ���� &"$� $�� )�(*)� .����� )����� �� $�+��� �� $��! #" $*/%$¬<LNMQT ¥:]<V�MQLNV�TE�4mQ£�V0s<M,£©]�R%��V0R�hi_isvV,RgLIRPepy�s�[^]vLNMQsvMQc�e�R,LNL\Rly�£�]<MùepV�TUV%TUMPLNy�_ze!n�MPc<s�q4V,qn4y'�&('�)�m `d]<V�hzR,LNOPV,ep`0f�M�edep_invhiVx£:V%_aOQ]�`%m�R#f<LdMQn<haV%T f�R,LSR,TUV%`NV�L%¤DU:Vl[%Rgc�e{V�Mg�ö`N]<_¶eJmQMPc<L�epMQhac<�`N_aMQs�_zeIs<MQ`0[bMQTUf<haV%`NV�hiy�TUM�q4cvhzRgL{X±_¸��'�&('�)�_is�[bLNV,RPepV,ebmQ_i`I£�_ihah�nµV�svV,[JV,edeNRgLdy�`dM#LNV,q�V,ep_aOQs�`d]<Vñ êçÊbÌ¡Í�̲ÑPØSÌCÖ×Ó,Ö×Ì¡Ö¸Ø^õäõ×Ð%â+*-,/. ��Ø^ÓPÎZÌ¡Ñ,Í�õ×Ê,Ô{ØSõ�ÏgÈ10ùÍpËIÖ×ÚCÖ×Ó,Ö×Ì¡Ö¸ØSõ×Ö32{ÍdÎ2GCÖ×Ì¡Ñ K �� �FM

ü¡êIÙCüzæ

Page 16: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

��� B �#$ A -����=� B=A �#/�����! #"� 'C-F/0)�C/ 1�%(' � �=E %(' A ������' )8- A % A W �f<LNM�[bV,eNe{MQL%¤\�xMg£�V%��V%L�mg£�Vx[%Rgs�c�epVx`N]vV#R,f<f<LNMùRQ[S]�`d]�Rg`�£�RPeáfvLNV%��_iMPc�ephay�c�e{V,q>�¡MPL�q4V%LN_a�4_as<O�Rf<c<LdVxepyvep`NMPhi_¶[�RgLNL\R%y��¡MQL0`d]<Vxq4V%s�e{V�¢4soRgf�edRQ[S¢�f<LdMQn<haV%Tj� Y���~C�ß�g�i��¤�}k� £�V:]�R%��V�f<LdM�[JV,eNe{MQL\e£�_i`d]�n<c ?!V�L:e{f�RQ[bVZ�¡MQL�MQs<hay��7f�Rg_aLSeJm�£:V�ep_aTUf<hiyr[JMPs4·�OPc<LNV��<')# 6�����f<]�yvep_z[�Rgh<f<LdM�[JV,edepMQL\e:`NMep_aT�c<h¶Rg`dV:MQsvV�fvLNM�[JV,edepMPL%¤ n�_is�[bV#R,hih�`N]<V ')#!�PRghac<V,e:R,LNV#¢�s<M,£�sU£�]<V�s7R�f<LNMPn<hiV�T®_¶eáhaM�RPq4V,q!m£:Vu[%RgsªRgh¶epMrq4V%`dV%LNTU_as<V��¡M@?+ha_is<VQ�öRZ�¡V%£¦n<_i`\eHMg�ö[JMPs4·�OPc<LSR,`N_iMPsU_is��¡MQLNT´Rg`N_aMQsr£�]<_z[S]�_as4�¡MQLdT+e`N]<VrK0° £�]<V%`d]<V%L�_a`�_ze:`NM�f�R,LN`N_¶[J_ifoRg`NV�RQ[J`d_i��V%hay�M,��ep_aTUf<hiy�[bMQs�`NLN_an<c<`dV#_i`\eTUV�TUMQLdyU�²_a`x[%Rgsn�V�V,RPep_ahiy�ep]vMg£�s `N]�R,`�`{£:M n<_i`\e�R,LNVUV�s<MQc<OP]��¡MQhahiM,£�_isvO7`N]vV�ha_is<V,e#M,� �³Y��#~C�ß�g�i�¡�S¤3n�c�[S]Rgs RgLdLSR%y*£�_i`d] 8Uf<LdM�[JV,eNe{MQL\eJm�[bMQs4·�OPc<LNVlq�_is�`NM RULN_as<O<mI[%R,s¦epMPhi��V�Rgs�y*f<LdMQn<haV%T­_as�ep`\Rgs�[JV_is±�¡s<MQ`dV+`N]�R,`�`d]<_ze�_ze�`N]vV�£�MQL\ep`�[%RPepV+LNV,e{c<hi`b��� W8 24 #6587 �9')#�6����¨f�RQedepV,eb¤¦¥:]<V+£:MPLSep`�[�RQepVLNc<svs<_is<O�`d_iTUVx_ze:`d]<V%slOr� 2 �� �\m<£�]�[J_a]�_¶e:MQf<`d_iT+R,h�¤� � �´ ��#�,"��0$��U ��}�s `d]<_ze�foRgf�V%L%m�£:V+]�R%��VUc�e{V,q¦epMQTªV���V�LNy�MQhzq©_¶q4V,RQe�`NM�q�V%LN_a��V+R�e{f�RgL\epV�RghiOPMQLd_i`N]vT �¡MQL`N]<V�q4y4soRgTU_¶[:f<LNMPOQLSR,TUTU_as<O#`NVl[^]<sv_z«�c<V�¡MPL�e{MQhi��_isvO�`N]vV#OQV%svV%LSR,h!¢�s�Rgf�edRQ[S¢�fvLNMQnvhiV%T*¤I¥:]<Vn�RQe{_z[�_¶q4V,R�_¶eZ`N]<V��kRQ[J`�`d]�Rg`#`d]<V�[JMùep`Z�¡c<so[J`N_aMQs*_zexTUMQs<MP`NMPs<_z[&� � 7#�Q�/�kmCRgs�q7_a`�epc�¹+[JVleZ`NM[%Rgh¶[Jc<h¶Rg`NVª_i`�MQsvhiy¦R,`U[JV�LN`SR,_is /�$&%(' % /D��� B "#%9��' A m0_�¤ V�¤im�f�MP_is�`Se�£�]<V%LNV+`d]<VU�¡c<s�[J`d_iMQs¨[S]�RgsvOQV,e�PRghicvV�¤LU:Vl[%Rgc�e{V�Mg�u`N]<_¶eJm!`d]<V��¡cvs�[J`N_aMQs�[%R,s�n�V�LdV%f<LNVlepV%s�`NV,q RQerepV,«�c<V%s�[bV,eM,��f�R,_iL\eJ¤�¥:]<VepV,«�c<V%so[JV,e:R,LNV�m<MPs+`N]<VrR%��V%LSR,OQV�m<T�c�[S]Ue{]<MQLd`NV%L�`d]�Rgs `N]<V�¢�s�RgfoeNRQ[S¢+[%R,f�RQ[b_i`{y�m<R,s�qU`N]<_¶e:_ze`N]<Vr¢�V%yU`dM�`d]<V�_aTUf<LNM,��V%T�V%s�`0Mg�0`d]<V�R%��V%L\RgOQVrLNc<svs<_is<O�`N_aTUV�¤p�ZMQLdM,£�_i`N¯>Rgs�q n Rg]<s<_I]�R%��Vf<LNVlepV%s�`NV,q�V%w�`NV%soep_i��V�V�TUf<_iLd_z[%R,h<qvRg`SR�`dM�epc<fvfµMPLN`�`d]<_ze��kRQ[J`0�¡MQL�`N]vV�epf�R,LSe{V��NMùW�R,hiOQMPLN_a`N]<T*mRgs�q7MPc<L#f<LdV%hi_aTU_isoRgLNyªep_aT�cvhzRg`d_iMPs�e:[JMPs4·�LdT­`N]oRg`#`d]<_ze�_ze#R,hze{MU`NLdc<V��¡MPL#`N]<VrOQV%svV%LSR,hHf<LdMQn<�hiV%T�¤�YZhze{M�svMQ`NV�`N]oRg`rep_as�[JV�`N]vV�f<LNMPn<hiV%T _ze �#Kß[JMQTªf<hiV%`dV�m�`N]<V % "#$ A '�/D� A -Z`d_iTUVr_ze#e{`N_ihahV%w�fµMPs<V%s�`N_¶Rgh��¡f�Rg`d]<MQhaMQOP_z[%R,hHV%wvRgTªf<hiV,e0[%R,s+nµVrV,RQe{_ihayU[JMPs�ep`dLNc�[b`NV,qI� 50]�� �Q���¡�S¤0YZs R,s�Rghay4`d_z[ep`dc�q4yUM,�0`N]<VrR%��V%L\RgOQV�[%RQe{V�[JMPTUf<hiV�w4_a`pyr_ze:`d]<Vrepc<n<|{V,[b`:Mg�áMQc<LxMQs<OPMQ_as<O�£�MQLd¢!¤YZs<MQ`d]<V%Lx[JMPs4`dLN_an<c<`N_aMQsUM,�0`N]vV#f�Rgf�V%Lx_ze:`d]<Vrepyvep`dV%T+Rg`d_z[xq4V%Ld_i�PRg`d_iMQs+M,��`d]<VrRghiOPMQLd_i`N]vT+e

n4y*`dLSR,s�eé�¡MPLNTU_as<O+`N]<VUMPLN_aOQ_isoRgh:LdV,[Jc<LdLNV%so[JV�V,«�c�Rg`d_iMQs _is�`NM ep`dLNV,R,T �¡c<so[J`N_aMQs�R,h:f<LdMQOQL\RgT+eb¤�xc<L q4V%LN_a�PRg`N_aMQsß_ze+RghaTUM�e{`+TUV,[S]�Rgs<_¶[%Rghkm�Rgsoq f<LNM,��_zq4Vle�R¦f<LNM�M,��Mg�ª[JMPLNLdV,[J`NsvV,eNeUMg�>`N]<Vq4V%Ld_i��V,q�f<LNMPOQL\RgT+eb¤¬H_is�R,hihay�m:£:V*]oRl��V�e{]<M,£�s ]vMg£ `N]<V�e{`NLdV,RgT �¡c<so[J`N_aMQs�R,h#f<LNMPOQL\RgT+eU`N]oRg`+£:V�q4V�LN_i��Vlq

[JMQcvhzq�n�V+_iTUfvhiV%TUVbs�`NV,q7MPs R7£uR%��VJ�¡LNMPs4`>RgLNL\R%y©f<LNM�[bV,eNe{MQL%muRgs¨RQe{y4s�[S]<LdMQs<MPc�e�fvLNM�[JV,edepMPLRgLdLSR%y�m0£�]<V%LNV V,RQ[S]¨K0° ]�RQe�·�w�V,q TUV�T�MPLNy�mI_is�q4V�fµV�s�q4V%s�`�Mg��fvLNMQnvhiV%T�foRgLSR,TUV%`dV%LSeb¤¦}ésepc�[S]¦R,s R,LNL\Rlyùm�f<LNMPn<hiV%T´e�£�_a`N]©h¶RgLdOQV%L�f�R,LSR,TUV%`NV�LSe�ep_a¯%V,e�R,LNV ep_aTUf<hay*epMPhi��V,q�n4y RQq<q�_is<OTUMQLdV�f<LNM�[bV,eNe{MQLSebm4MPL:LNV�c�ep_as<O�`N]<V�edRgTUVxR,LNL\Rly�_as�T�c<ha`N_ifvhiV:foRQeNe{V,eJ¤0}�s�MQL\q4V%L:`dMrq4M�`d]<_ze0£:Vf<LNM,��V�`N]oRg`#`d]<V�haV%s<OQ`d]�eZM,�0`N]<V�nvc�? V%LSeZ_as*R,LS[S]<_i`dV,[J`NcvLNV#_¶e#Rgha£�R%y<e�n�MQc<soq4V,q!¤�¥:]<_¶eL\Rg_¶epV,eRgs+_is�`NV�LNV,e{`N_isvO�MQf�V%s «�c<V,e{`N_iMPsC¤0}�`:_¶e:£:V%hahµ¢�s<M,£�s+`N]�R,`Zh¶Rg¯%yªep`dLNV,R,T®�¡c<s�[b`N_iMPs�Rgh f<LNMPOQL\RgT+e�³¬H� Tl���km:[JMPLNLdV,epf�MQsoq±RghiTªM�ep`�TªV,[^]oRgs<_¶[%Rghahiy7`dM©s<V%`{£�MQLN¢ve�Mg��f<LNM�[JVleNepVle�[JMPTUT�c<s<_z[�Rg`N_as<O`N]<LdMQc<OP]�·<�¡M>[^]�R,s<s<V%h¶e�����Rg] T�� ��m�`N]vV,epV�RgLdV#s<MQ`�LNV,R,hi_¶ep`N_¶[:n�V,[%RgcoepV#`d]<VZfvLNMQnvhiV%T M,�If<LNM,��_is<On�MQc<s�qveMPs�nvc�? V%L�hiV%svOQ`N]oe:_ze(cvs�q4V,[J_¶q<RgnvhiV� �©RPq��g� �k¤H��V�£�V%LNV�epco[%[JV,edeé�¡c<hC_asUf<LNM,��_is<Or`N]<V

ÙIÙ�Ó\r%ëbëJî��

Page 17: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

WJ� � 1�+.-�� �0�=E#" �="����\� � ��� � ������� " B �#E@)+� -n�MQc<s�qveu�¡MPL:MQcvL�V%w<R,TUf<haV�n4y�]�R,s�q!m�R,s�q�_i`�£:MPc<hzq�n�V#_as4`dV%LNVlep`N_as<O�`NM�e{V%VZ_¸�I`N]<V�_zq4V,RPe(c�e{V,q_is+`N]vV�fvLNM�Mg�u[JMPc<hzqUn�V�OQV%svV%LSR,hi_i¯�V,q�`NMª[JV%Ld`SR,_is+[%RPepV,e�Mg�áRQe{y4so[^]<LdMQs<MPc�eZf<LdM�[JV,edepMQL�RgLdLSR%yveJ¤¬H_as�Rghahiy�mC_a`�_ze�s<V,[JVleNeNR,LNy�`NM�Rgs�R,hiy�`N_z[�Rghihay�q4V%`dV%LNTU_as<V�R7OQM�M�q¦TUM�q4V%h��¡MPL�`N]vV+R%��V%LSR,OQV

[%RQe{V�n�V%]oRl��_iMPL�M,��`N]vVUe{f�RgL\epV+R,hiOQMPLN_a`N]<T+e�Rgs�q�]vV%s�[JV�`d]<V�fvLNM�[JV,edepMPL�RgLdLSR%yveJ¤U}²�R�[bhiM�e{V,q�¡MQLdT �¡MQL�`N]<_¶e�[%Rgs¦n�V*q�V%`NV%LdTU_isvV,q!mCMQs<V [JMPc<hzq©`dLNy©`dM�MPf<`N_aTU_i¯%V�`d]<V+V%w�fµVl[J`NV,q©Ldc<s<s<_as<O`N_aTUV�n4y Rgfvf<LNMPf<LN_¶Rg`NV�hiy*[S]<M�Mùep_isvOU`N]<V�nvc�? V%L#e{_i¯%Vr_is*V,RP[^]�K0°¤ ¥:]<_¶e#Rgf<fvLNM�RP[^]�]�RPeZn�V%V%sepc�[�[JV,eNe��¡c<hihay�c�e{V,q��¡MPL(`d]<V�q4V%s�e{V#R,hiOQMP�²`dV,[S]<��[bc<_i`0�³Y�~Z�,��R��km�Rgs�q�_a`0£:MQcvhzq�nµVx_is�`NV�LNV,e{`N_isvO#`NMV%w�`NV%s�qU_a`�`NM�`N]vV�e{f�RgL\epV>[%RQe{V�¤

�U��� 0 ?���� �����8� � �!0 �,� ¥:]<VuRgc<`d]<MQL\eH£:MPc<hzq�ha_i¢�V�`dMZ`d]�Rgsv¢ -ZMPLSRgs��±_ahzq4V��¡MPL�T+Rgs�yx]<V%hifv��¡c<h�q4_zed[Jc�edep_iMPs�eJmIR,s�q �¡MQL�T�c�[S]�]vV%hif�_is�e{_iT�c<hzR,`N_isvO�`d]<V�RghaOQMQLd_i`d]<T+eJ¤en�_as�[JV%LdV�`d]�Rgs<¢ve#`NMK�Rgcvh 5�RPepf<_Z�¡MPL�f�MP_is�`N_isvO�MPc<`Uq�V,RQq4haM�[^¢¦f<LdMQn<haV%T+e�£�_i`N] R fvLNV%ha_iTU_as�RgLdy���V%L\ep_aMQs¦Mg��`d]<VRghaOQMQLd_i`d]<T*mxRgs�qßRgh¶epM¦`NM¦`d]<V�Rgs<MPs4y�TUMPc�eULNVJ�¡V%LdV%V,e��¡MQL epcvOQOQVlep`N_aMQs�eU`d]�Rg` epcvn�ep`\Rgs�`N_zR,hihay_iTUfvLNM,��V,q+�²£:V�]<MPf�VQ�:`d]<V�f<LNVlepV%s�`SR,`N_iMPsC¤

�� ���:� ��>�

�³Y���~ç�ß�,����~�¤�YZs�q4MPs<M,�!m�KH¤ �xc<_as4`dMQsCm8n�¤�~xRg|{MPf�RQq4]�y�V�m�Rgsoqe-�¤Q�±_ahzq4V�¤ � �=),% �&' � - #% A ' -0$KD� A -FEe��� A '4"�� % / � $&$ � � � "#$�' )8- -�� -&$ ���B���=� B=A �#/���� $ " KI� -&+�¤�¥CV,[S]<s<_¶[%Rgh�~V��f�MQLd`�K0}�����W � m<}{~Z} n�YrmQ~�V%s<s<VleJm�¬<LSRgso[JV�m��*R,LS[S]7W��Q�g�v¤0��epcvn<TU_i`d`NV,q�`NMrK�R,LSRghahiV%hK�LNM�[bV,eNe{_is<O G!V%`N`dV%LSeqm�R�fvLNV%ha_iTU_as�RgLdy���V%L\ep_iMPs+`NM�RgfvfµVlRgL#_as7K Y#~ 5�° G9GCYE�g�<¤

�³Y#~x�g�ùR�� ~�¤,YZs�q4MPs<M,��Rgsoq n�¤,~xRg|{MQfoRQq4]�y�V�¤ �0�� B ' % + ��� ���! #"�4' -F/0)� /�1�%('<� "#$ '*)8-\���=� B A �#/���� $F" KI�(-&+�¤�¥CV,[^]vs<_z[%R,h�~�V%f�MQLd`�K(}�� T,��WQm�}{~x}_n Y�m 5�RgTUf<coe�q4V,U:V,R,c<hi_aV%cCm~�V%s<s<VleJm#¬<L\Rgs�[JVùm R�R,s4coRgLNyEW��Q�,�<¤ ��e{c<n<TU_a`N`NVlq `NM�}p°0°0°�¥CLSR,s�eNRP[J`N_aMQs�eUMQsK�R,LSR,hihiV�hIRgs�q&-Z_¶ep`NLd_in<cv`NV,q3n�yvep`dV%T+e^�\¤

�³Y#~x�g�Pn8� ~�¤�YZs�q4MPs<M,�+Rgsoqon�¤�~xRg|{MQfoRQq4]�y�V�¤ � � B �#$ A -����=� B=A �#/�����! #"�4' -F/0)� /�1�%(' � �=E%(' A ���"��' )8- A % A ¤<¥CV,[S]<s<_z[�Rgh�~�V%f�MQLN`áK(}�� �Q��WQm�}{~x}_n Y�m,~V�s<s<V,ebmQ¬<LSR,s�[JV�mP¬<V%n<Ldc�RgLdyW��Q�g�v¤

�³YH� Tl��� °�¤IY#ep]o[JLNM,�¡`�R,s�q��E¤C� RQq4OPV�¤ G97 5�} -�mIY �¡MPLNT+R,h0epyvep`dV%T­�¡MQL�£�Ld_i`N_as<O Rgs�qf<LdM,�4_as<O�fvLNMQOPLSR,T+eJ¤)�0' �����,"#1�$q�=���H" ��� "#+ B 1#'4%9�� Qm � � �"� � � W,�<m�W��NTl�4¤�VU:V%h<WNTF� ~�¤(U:V%hihaT+Rgsö¤�� ���=�#+ % /�� $F"D #$ �#+ + %9�� P¤�K�LN_as�[JV%`dMQs 7Zsv_i��V%L\ep_i`{y�K�LNVleNeJmCW���W T�¤

� 5�RPeN� � � KI¤ 5�RQe{f<_�¤�G!c�[J_zq epy�s�[^]vLNMQsvV�¤7}�s�� $F"@/��� ��� �� ����mIf�RgOPV,e T,� �� � m �ZV%LdTUV,ebmK�R,LN_¶eJmCW%�P� � ¤� 5 5pR��P��� Pr¤Q�r¤ 50]vV%sCmI�©¤ n�¤ 50]<V�LNsCmIRgsoq:R<¤Q��¤ R�Rgs<Ov¤+Ká_af�V%hi_as<V�RgL\[^]<_a`NV,[b`Nc<LdV,e�¡MQL>q4y��s�R,TU_z[xf<LNMPOQLSR,TUTU_as<O�R,hiOQMPLN_a`N]<T+eb¤�� �#$ ��� �(-D��� "#+ B 1 '4%9�� QmCW � �aWQWQW��WPW�T�m0W��Q�Q��¤

ü¡êIÙCüzæ

Page 18: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

��� B �#$ A -����=� B=A �#/�����! #"� 'C-F/0)�C/ 1�%(' � �=E %(' A ������' )8- A % A WFW� 50]����P��� ��¤ 50]4�PR,`SRghk¤a�#RgL\q ¢�s�RgfoeNRQ[S¢©f<LdMQn<haV%T+eb¤ B -&$F��' % " � A � - A -F�#$ /0)�m0�3�$�iWb���P�

Wb�<WQWPmHW����P�4¤� 5pR��P��� Pr¤Q�r¤�50]<V%sªRgs�q R<¤Q��¤ R�R,s<O<¤öYZs�_aTUf<LdMg��Vlq�f�R,LSRghahiV%hoRghiOPMQLd_i`N]vT �¡MQL��NMùW#¢4s�R,f<�

edRQ[S¢Uf<LNMPn<hiV�T*¤ � �#$F���(�(- � � "#+ B 1#' %9� QmCW ��� �4WPW �Q�4WPm0W%�Q�P�4¤� 5��*�P��� Pr¤Q�r¤ 50]vV%s¨Rgs�q¨�©¤ n�¤ 50]<V%LNsö¤�Y�f<_if�V%ha_is<V,q RghiOPMQLd_i`N]vT �¡MPL�T�c<ha`N_af<hiV%�k[S]<MQ_¶[^V� M�W�¢4s�R,f�eNRP[^¢�f<LdMQn<haV%T*¤-'q��'C-&$q�=��'4% " �=��� �="#1 $q�=���9" ��� % @)e� B -D-FE � "#+ B 1 '4%9�� Qm�v�NWg�_�³� � �� �4m�W��Q�P�4¤�³¬<V%L ����� Y�¤ Pr¤C¬<V%LNLdV%_iL\R4¤�¥:]<V�¢4soRgf�edRQ[S¢*f<LNMPn<hiV%T MPs�f�R,LSR,hihiV�h�R,LS[S]<_i`dV,[J`NcvLNV,eb¤#}�s��©¤50Mùeps�R,LSq!m���¤�~�MQn�V%Ld`%mCKI¤ �xc<_is�`NMPsCm!R,s�q*�©¤ ~ZR%y�s�RghkmµV,q�_i`NMPLSebm�'q��'C-&$q�=��'4% " �=���� "#$_� A )," B " � � �#$F���(�(- �9� �=E � % A '4$I%9K�1#'C-FE ���! #"#$&%('*),+ A m�f�R,OQV,exWJ� W �WFWQ�4m �ZMPLN`N]�ZMPhih¶Rgs�q!m+U:MQs�RPeJm ¬<LSRgso[JV�m ��[J`dMQn�V%L�W�������¤

�³¬H� Tl��� -�¤v¬<LN_iVlq4T+Rgs�R,s�q&-�¤4�±_¶epV�¤ 5 � � n�ep]vMQc<h¶q´svMQ`:V��QR,hic�R,`NV�_i`\e:R,LNOQcvTUV%s�`SeJ¤ö}és' �>������� �,m4f�R,OQV,ex��W T ��3�g�vm�W%� T,�4¤

� P0R$T,�i� �©¤$P�R,LNV%y�R,s�qe-�¤�RQMQ]vs�epMPsC¤�� "#+ B 1 'C-&$ A � �=E '���'4$ �#/I'4� K�%(� %(' � 1 ���1 % E�-�' " '*)8-�>)8-F"#$q� " �����) � "#+ B �(-D'C-q� - ADA ¤x¬<LNV%V�T+RgsCm8n�R,s*¬<LSR,s�[J_¶eN[JMvm!W%� T,��¤�V� n+T%��� °�¤8�xMQLNM,£�_a`N¯�R,s�q3n�¤ n�R,]<s<_k¤ 50MQTªf<c<`N_as<O�foRgLN`d_i`d_iMQsoe:£�_i`N]´Rgf<ha_z[%R,`N_iMPs�e:`NMr`N]<V¢�s�RgfoeNRQ[S¢Uf<LdMQn<haV%T*¤��="#1 $��,���9" � ' )8-S��� �*mv�4WQ�k� �_�×�NT"T �Q�Q�<mIYZfvLN_ih�W%� T%�<¤

�V� n+T2��� °�¤ �ZMPLNM,£�_i`d¯xRgs�qen�¤$n Rg]<s<_k¤�� 1��=E#�#+.-q��'4��� A " ��� "#+ B 1 'C-&$)���! #"#$&%('*),+ A ¤950MQTª�f<cv`NV%LSn�[b_iV%s�[bV#K�LNVleNeJm �*RgLdy4h¶Rgs�q m=7 n�Yrm!W%� T2��¤

�V�Zco�Q��� ¥#¤ 5x¤D�xcC¤ '���'C- �-&$ � $ "D #$F�#+ + %9�� � �=E�� -D' % "#$ ��� � " % A ¤7Y#qvq4_ze{MQs<�¡��VlephiV�y�mW��Q�Q��¤

����YSP#~ �Q�i� n�¤���¤ �#c<s<O<m ��¤Bn�¤!YxLNc<sCmö~�¤�R<¤>P�Rgha��°�¯%V%L�m!R,s�qI-�¤��>¤ U#¤ ~ZR,M<¤��©R%��VJ�¡LdMQs�`R,LNLSR%y f<LNM�[JVleNepMPL/��hzR,s<OQc�R,OQV�m�RgL\[^]<_a`NV,[b`Nc<LdV�Rgsoq�R,f<f<hi_¶[%Rg`d_iMPs�eJ¤ '��������,$ � � A �#/I'4% " � A " � � "#+ B 1#' -&$ A m 50� � W"�iW���Wg� �W����Q�4m0W����Q��¤����Rg]�T%��� Pr¤���R,]<sC¤�¥:]vV�e{V%T+R,s4`d_z[%eHM,�0R�e{_iTUfvhiV�hzR,s<OQcoRgOQV��¡MQL�f�RgL\RghihaV%h!fvLNM�[JV,edep_as<O<¤�}és� $ ";/I-D-FE#%9�� A " �C'��-' ��m�f�RgOPV,eZ�$TùW ù�$TiW�mC}{¬�}{KHmvYZc<OQcoep`rW%�NT��<¤� G>n���W�� R<¤�G!_is6Rgsoq R<¤xY�¤Sn�`NMPLNV%L�¤ KáLdM�[JV,edepMQLd�²Vb¹+[J_aV%s�`�]�y�fµV�LS[Jc<n�V�R,hiOQMPLN_a`N]<T �¡MQL`d]<V�¢4soRgf�edRQ[S¢7f<LdMQn<haV%T*¤ �,"#1 $��=��� " � � �#$ ��� �(-D� � �=E � % A ' $&%9K�1#' -FE � "#+ B 1 '4%9�� QmW � � �"� � ��� T�m0W%�P�4WP¤� G>n8n ����� R<¤,G!V%V�m<°�¤ n�]vLSRgOPM,£�_i`N¯ùm�Rgs�q3n�¤ n�R,]<s<_k¤0Y ]4y�f�V%LS[bc<n�V�RghaOQMQLd_i`d]<T®�¡MQL�`d]<Vr�NMùW¢�s�RgfoeNRQ[S¢�f<LNMPn<hiV�T+eJ¤ �:�," � � �#$ ��� �(-D�,� �=E � % A ' $&%9K�1#' -FE�� "#+ B 1 '4%9�� Qm W��³� � � ù� WP�4mW�������¤

ÙIÙ�Ó\r%ëbëJî��

Page 19: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

W%� � 1�+.-�� �0�=E#" �="����\� � ��� � ������� " B �#E@)+� -�³�*¥��P��� n�¤v�*RgLd`NV%hahiMrRgs�q+K¦¥CMQ`N]ö¤ ���=� B=A �#/G� � $F" KI�(-&+ A21 ���! #"#$&%('*),+ A � �=E � "#+ B 1#' -0$

'0+ B �(-&+.-q��'4��'4% " �4¤ RQMQ]vs7�±_ihaV%yªRgs�qln�MQs�ebmCW%�P�Q�4¤� � 7��Q��� Pr¤8�ZV%Tª]�Rgc�e{V%L�Rgs�q,R<¤=7ZhahiT+R,sC¤B-Z_zed[JLNV�`NV�q4y4soRgTU_¶[Zf<LNMPOQL\RgTUTU_as<OrRgs�q+[%R,f<�

_a`SRghIR,hihaM�[%Rg`d_iMQsö¤ ��� �=�� �-&+.-q� ')� /�% -q�=/I-\mHWFW4�����G� ���g� �WP��W<m�W��Q�Q��¤�³¥CV%s��P��� n�¤�¥CV%s<O<¤ßY#qvRgf<`d_i��V+f�RgL\RghahiV%h�RghaOQMQLd_i`d]<T��¡MQL�_is�`NV%OPLSRgh�¢�s�R,f�eNRP[^¢¨f<LNMPn<hiV%T´eJ¤

�,"#1�$q�=���H" ��� �#$F���(�(-D� � �=E � % A ' $&%9K�1#' -FE�� "#+ B 1#' %9�� Pm��$�³�ù�Q� ����P�4m0W%�P�Q��¤� � RQq��,��� KI¤� RQq�hiV%L�¤ G!_¶ep`dhiV,edeps<V,ede�_¶e´n�V%`d`NV%Lª`N]�R,s2hzR,¯%y4svV,eNeq� h¶Rg¯%y¨V%�PRghicoRg`N_aMQs6Rgs�qOùRgLNnoRgOQVr[JMPhihaV,[J`N_aMQs�R,`�[JMPTUf<_ihaV�`N_aTUV�¤�}�s � $F"@/I-D-FE#%9� A21 � ��+ B " A % 1�+ " � �/' � �� �=E � 1��=/I'4% " �=��� � $F"0 $ �#+ + %9�� Qm�f�R,OQV,ex� W NWQ��m!Y 5��©m!W����g�v¤

ü¡êIÙCüzæ

Page 20: A Sparse knapsack algo-tech-cuit and its synthesis · ISSN 0249-6399 apport de recherche 1994 INSTITUT NATIONAL DE RECHERCHE EN INFORMATIQUE ET EN AUTOMATIQUE A Sparse Knapsack Algo-tech-cuit

Unite de recherche INRIA Lorraine, Technopole de Nancy-Brabois, Campus scientifique,615 rue du Jardin Botanique, BP 101, 54600 VILLERS LES NANCY

Unite de recherche INRIA Rennes, Irisa, Campus universitaire de Beaulieu, 35042 RENNES CedexUnite de recherche INRIA Rhone-Alpes, 46 avenue Felix Viallet, 38031 GRENOBLE Cedex 1

Unite de recherche INRIA Rocquencourt, Domaine de Voluceau, Rocquencourt, BP 105, 78153 LE CHESNAY CedexUnite de recherche INRIA Sophia-Antipolis, 2004 route des Lucioles, BP 93, 06902 SOPHIA-ANTIPOLIS Cedex

Editeur

INRIA, Domaine de Voluceau, Rocquencourt, BP 105, 78153 LE CHESNAY Cedex (France)

ISSN 0249-6399


Recommended