The invention provides bounded model checking of a program with respect to a property of interest comprising unfolding the program for a number of steps to create a program formula; translating the property of interest into an automaton; encoding the transition system of the automaton into a Boolean formula creating a transition formula; conjoining the program formula with the transition formula to create a conjoined formula; and deciding the satisfiability of the conjoined formula.

The following papers provide useful background information, for which they are incorporated herein by reference in their entirety, and are selectively referred to in the remainder of this disclosure by their accompanying reference numbers in square brackets (i.e., [4] for the fourth paper, by R. E. Bryant).    [1] R. Alur, C. Courcoubetis, and D. Dill. Model-checking for real-time systems. 5th Symp. On Logic in Computer Science (LICS 90), pages 414-425, 1990.    [2] C. W. Barrett, D. L. Dill, and A. Stump. Checking Satisfiability of First-Order Formulas by Incremental Translation to SAT. LNCS, 2404:236-249, 2002.    [3] A. Biere, A. Cimatti, E. M. Clarke, and Y. Zh. Symbolic model checking without BDDs. LNCS, 1579, 1999.    [4] R. E. Bryant. Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers, C-35(8):677-691, August 1986.    [5] R. E. Bryant, S. German, and M. N. Velev. Exploiting positive equality in a logic of equality with uninterpreted functions. LNCS, 1633:470-482, 1999.    [6] Edmund M. Clarke, Orna Grumberg, Somesh Jha, Yuan Lu, and Helmut Veith. Counterexample-guided abstraction refinement. LNCS, 1855:154-169, 2000.
[7] E. M. Clarke, A. Biere, R. Raimi, and Y. Zhu. Bounded model checking using satisfiability solving. Formal Methods in System Design, 19(1):7-34, 2001.
[8] F. Copty, L. Fix, R. Fraer, E. Giunchiglia, G. Kamhi, A. Tacchella, and M. Y. Vardi. Benefits of bounded model checking in an industrial setting. LNCS, 2101:436-453, 2001.    [9] Satyaki Das and David L. Dill. Successive approximation of abstract transition relations. In Symposium on Logic in Computer Science, pages 51-60. IEEE, 2001.    [10] J.-C. Filliâtre, S. Owre, H. Rueβ, and N. Shankar. ICS: Integrated Canonizer and Solver. LNCS, 2102:246-249, 2001.    [11] Rob Gerth, Doron Peled, Moshe Vardi, and Pierre Wolper. Simple on-the-fly automatic verification of linear temporal logic. In Protocol Specification Testing and Verification, pages 3-18, Warsaw, Poland, 1995. Chapman & Hall.    [12] A. Goel, K. Sajid, H. Zhou, and A. Aziz. BDD based procedures for a theory of equality with uninterpreted functions. LNCS, 1427:244-255, 1998.    [13] T. A. Henzinger, X. Nicollin, J. Sifakis, and S. Yovine. Symbolic model checking for real-time systems. Information and Computation, 111(2):193-244, June 1994.    [14] Thomas A. Henzinger, Ranjit Jhala, Rupak Majumdar, and Grégoire Sutre. Lazy abstraction. ACM SIGPLAN Notices, 31(1):58-70, 2002.    [15] Orna Kupferman and Moshe Y. Vardi. Model checking of safety properties. Formal Methods in System Design, 19(3):291-314, 2001.    [16] Yassine Lachnech, Saddek Bensalem, Sergey Berezin, and Sam Owre. Incremental verification by abstraction. LNCS, 2031:98-112, 2001.    [17] M. O. Möller, H. Rueβ, and M. Sorea. Predicate abstraction for dense real-time systems. Electronic Notes in Theoretical Computer Science, 65(6), 2002.    [18] O. Möller and H. Rueβ. Solving bit-vector equations. LNCS, 1522:36-48, 1998.    [19] Matthew W. Moskewicz, Conor F. Madigan, Ying Zhao, Lintao Zhang, and Sharad Malik. Chaff: Engineering an Efficient SAT Solver. In Proceedings of the 38th Design Automation Conference (DAC'01), June 2001.    [20] G. Nelson and D. C. Oppen. Simplification by cooperating decision procedures. ACM Transactions on Programming Languages and Systems, 1 (2):245-257, 1979.    [21] S. Owre, J. M. Rushby, and N. Shankar. PVS: A prototype verification system. In 11th International Conference on Automated Deduction (CADE), volume 607 of Lecture Notes in Artificial Intelligence, pages 748-752. Springer-Verlag, 1992.    [22] David A. Plaisted and Steven Greenbaum. A structure preserving clause form translation. Journal of Symbolic Computation, 2(3):293-304, September 1986.    [23] A. Pnueli, Y. Rodeh, O. Shtrichman, and M. Siegel. Deciding equality formulas by small domains instantiations. LNCS, 1633:455-469, 1999.    [24] H. Rueβ and N. Shankar. Deconstructing Shostak. In 16th Symposium on Logic in Computer Science (LICS 2001). IEEE Press, June 2001.    [25] Vlad Rusu and Eli Singerman. On proving safety properties by integrating static analysis, theorem proving and abstraction. LNCS, 1579:178-192, 1999.    [26] H. Saïdi. Modular and incremental analysis of concurrent software systems. In 14th IEEE International Conference on Automated Software Engineering, pages 92-101. IEEE Computer Society Press, 1999.    [27] Robert Shostak. Deciding linear inequalities by computing loop residues. Journal of the ACM, 28(4):769-779, October 1981.    [28] A. P. Sistla. Safety, liveness and fairness in temporal logic. Formal Aspects of Computing, 6(5):495-512, 1994.
Model checking decides the problem of whether a system satisfies a temporal logic property by exploring the underlying state space. It applies primarily to finite-state systems but also to certain infinite-state systems, and the state space can be represented in symbolic or explicit form. Symbolic model checking has traditionally employed a Boolean representation of state sets using binary decision diagrams (BDD) [4] as a way of checking temporal properties, whereas explicit-state model checkers enumerate the set of reachable states of the system.
Recently, the use of Boolean satisfiability (SAT) solvers for linear-time temporal logic (LTL) properties has been explored through a technique known as bounded model checking (BMC) [7]. As with symbolic model checking, the state is encoded in terms of booleans. The program is unrolled a bounded number of steps for some bound k, and an LTL property is checked for counterexamples over computations of length k. For example, to check whether a program with initial state I and next-state relation T violates the invariant Inv in the first k steps, one checks, using a SAT solver:I(s0)T(s0, s1) . . . T(sk-1, sk)(Inv(s0) . . . Inv(sk))
This formula is satisfiable if and only if there exists a path of length at most k from the initial state s0, which violates the invariant Inv. For finite state systems, BMC can be seen as a complete procedure since the size of counterexamples is essentially bounded by the diameter of the system [3]. It has been demonstrated that BMC can be more effective in falsifying hypotheses than traditional model checking [7, 8].
It is possible to extend the range of BMC to infinite-state systems by encoding the search for a counterexample as a satisfiability problem for the logic of Boolean constraint formulas. For example, the BMC problem for timed automata can be captured in terms of a Boolean formula with linear arithmetic constraints. But the method presented here scales well beyond such simple arithmetic clauses, since the main requirement on any given constraint theory is the decidability of the satisfiability problem on conjunctions of atomic constraints. Possible constraint theories include, for example, linear arithmetic, bitvectors, arrays, regular expressions, equalities over terms with uninterpreted function symbols, and combinations thereof [20, 24].
Whereas BMC over finite-state systems deals with finding satisfying Boolean assignments, its generalization to infinite-state systems is concerned with satisfiability of Boolean constraint formulas. There has been much recent work in reducing the satisfiability problem of Boolean formulas over the theory of equality with uninterpreted function symbols to a SAT problem [5, 12, 23] using eager encodings of possible instances of equality axioms. Barrett, Dill, and Stump [2] describe an integration of Chaff with CVC by abstracting the Boolean constraint formula to a propositional approximation, then incrementally refining the approximation based on diagnosing conflicts using theorem proving, and finally adding the appropriate conflict clause to the propositional approximation. This integration corresponds directly to an online integration in the lazy theorem proving paradigm. Their approach to generate good explanations is to extend CVC with a capability of abstract proofs for overapproximating minimal sets of inconsistencies. Also, optimizations based on don't cares are not considered in [2].
Initial experiments with PVS [21] strategies, based on a combination of BDDs for propositional reasoning and a variant of loop residue [27] for arithmetic, it was only possible to construct counterexamples of small depths (≦5). More specialized verification techniques are needed. Because BMC problems are often propositionally intensive, it seems to be more effective to augment SAT solvers with theorem proving capabilities, such as ICS [10], than add propositional search capabilities to theorem provers.

Method for combining decision procedures with satisfiability solvers


A method for manufacturing glass-based micro- and nanostructure comprising the step of dewetting a thin-film glass layer on a textured substrate to form the micro- and nanostructure from the thin-film glass layer.

Modern devices with nanostructures require the tuning of the size, shape, and spatial arrangement of nano-objects and their assemblies with nanometer scale precision, over large-area and sometimes soft substrates. Such stringent multi-scale and mechanical requirements are beyond the reach of conventional lithography techniques or simpler self-assembly approaches. Therefore, new methods and systems for fabricating nanostructures, more specifically glass-based nanostructures are strongly desired, to overcome the disadvantages and limitations of the state of the art.

Method and system for fabricating glass-based nanostructures on large-area planar substrates, fibers, and textiles

ECOLE POLYTECHNIQUE FEDERALE DE LAUSANNE (EPFL)


An antenna steering mount includes two basic building blocks which are joined together to form any of the known steering-axis combinations. Each block includes a cylinder cut at an angle to form a cylindrical wedge. The wedges are joined together by bearings at their interface, and motors are used to counter rotate the two wedges relative to each other. One end of the complete assembly is attached to a mounting platform, and the other end includes mounting features for attaching an antenna dish thereto. Various two- and three-axis steering configurations are disclosed including combinations of azimuth, elevation, cross-elevation, and cross-level steering.

Conventional antenna mounts are normally required to mechanically steer high-gain antenna systems in two dimensions. In some mobile applications, such as ship-mounted antennas, the required steering range can be up to full hemispheric; however, in other applications, e.g. forward-looking radar antennas in the nose of aircraft, the steering range is limited to a narrower region. Similarly, multiple shipboard antennas, each with limited steering range, which in combination cover a large steering range, are disclosed in a paper by E. Barry Felstead, entitled "Combining multiple sub-apertures for reduced-profile shipboard satcom-antenna panels," in Proc. IEEE Milcom 2001, unclassified paper 19.6, Vienna, Va., 28-31 Oct. 2001; and in a paper by E. Barry Felstead, Jafar Shaker, M. Reza Chaharmir and Aldo Petosa, entitled "Enhancing multiple-aperture Ka-band navy satcom antennas with electronic tracking and reflectarrays," in Proc. IEEE Milcom 2002, paper U105.7, Anaheim, Calif., 8-10 Oct. 2002.
Regardless of the application, the steerable antenna mounts are preferably made as compact as possible by minimizing the size of the motors, and the profile depth, mass, and volume of the combined antenna and mounting structure. Moreover, it is also desirable to make the antenna mounts relatively simple and inexpensive to build.
Steering or pointing of the antenna involves a rotation about a single axis or about a plurality of axes, e.g. a variety of different axes used in various combinations depending upon the application of the antenna. Typically, the basic axes are referred to as azimuth, elevation, cross-elevation, and cross-level, as is well known in the art. Driving motors are usually used for actuating the rotation about the different axes. The different axes can be coupled together in a variety of ways including the use of gimbals.
With reference to FIG. 1, for discussion purposes, the reference coordinates are (xr,yr,zr) with the antenna system located at (0, 0, 0). The zenith is considered to be in the direction of the zr axis, and the xr and yr coordinates lie in the horizontal plane. For mobile applications, the yr axis could be pointed in the direction of forward motion. Spherical coordinates (φ,θ,ρ) are also illustrated in FIG. 1, in which the angle φ corresponds to the azimuth angle, and the angle θ corresponds to the complement of the elevation angle, ε, i.e. ε=90°−θ.
With reference to FIG. 2(a), a common two-axis antenna mount is an elevation-over-azimuth mount 1 for antenna 2, which uses a first motor (not shown) providing up to full azimuth rotation (360°) about a vertical axis V, and a second motor (not shown) providing full elevation rotation (90°) about a horizontal axis H. The center of gravity of the antenna 2 is usually offset from the pivot points, thereby requiring that the first and second motors have increased torque. These disadvantages can be reduced in certain applications in which the elevation range of the antenna is more limited, such as with the KVH series of satellite-dish antennas. Corey Pike and Claude Desormeaux, disclosed the adaptation of a type G3 KVH antenna for a vehicle-mounted application in the reference entitled "Ka-band land-mobile satellite communications using ACTS", 7th Ka-Band Utilization Conf., September 2001, and Richard S. Wexler, D. Ho, and D. N. Jones, disclosed the adaptation of a type G6 by MITRE in the reference entitled "Medium data rate (MDR) satellite communications on the move (SOTM) prototype terminal for the Army warfighters," in Proc. IEEE Milcom 2005, Atlantic City, Oct. 17-20, 2005. Unfortunately, the elevation-over-azimuth mount also has problems with cable wrap and with the keyhole effect in the zenith direction, as will be discussed later.
A less-common type of mount is the cross-elevation-over-elevation mount 5, as illustrated in FIG. 2(b), sometimes referred to as an "X-Y" mount. An elevation motor (not shown) is used to rotate an antenna 6 about a first horizontal elevation axis, and a cross-elevation motor (not shown) is used to rotate the antenna 6 about a cross-elevation axis. The mass of both the antenna 6, and the cross-elevation motor must be supported by the elevation motor, thereby adding to the motor-torque requirements; however, the X-Y mount does not have a keyhole problem in the zenith direction and does not have a cable wrap problem. Unfortunately, the X-Y mount tends to have a reduced steering range compared to the elevation-over-azimuth mount.
In certain applications, such as on naval ships, a third axis of steering is sometimes added to the antenna mount to get around the keyhole problem that the standard azimuth-elevation mount exhibits in the zenith direction. Another purpose is to add what is sometimes called a "cross-level" axis to simplify the compensation for ship roll and pitch.
An alternative approach to antenna steering is disclosed in U.S. Pat. No. 6,911,950 issued Jun. 28, 2005 to Harron, referred to as the "universal-joint gimbaled antenna mount" (or the "GiAnt" mount). As illustrated in FIG. 3, the antenna 7 plus the feed system is placed so that the center of mass is at, or near, the center of the universal joint 8, such as a ball joint. A yoke 9 driven by a motor (Motor 2) scans the antenna 7 about the elevation axis EA, and another motor (Motor 1) mounted on the yoke 9 pivots the antenna 7 about the ends of the yoke 9, i.e. scans the antenna 7 about the cross-elevation axis XEA. Since the center of mass of the system rests on the ball joint 8, the motors (Motor 1 and Motor 2) can be very small, i.e. small digitally driven stepper motors with built in shaft encoders can be use. Such a system can scan to over ±50° in both elevation and cross elevation, and with careful mechanical design could be slightly extend. As a result of the "X-Y" form of scanning, there is no problem with cable wrap, and the keyhole has been pushed far from boresight. Moreover, the GiAnt mounting system is relatively inexpensive to manufacture.
Unfortunately, the GiAnt mounting structure exhibits vibration in the form of twisting of the yoke 9 when mounted on a platform undergoing severe movements, e.g. ship mounted. The yoke 9 could be strengthened, but difficulties arise when making it sufficiently rigid for the steering accuracies likely to be encountered.
Rotating-wedges were disclosed by G. Maral and M. Bousquet, in Satellite Communications Systems: systems, Techniques and Technology, Fourth ed., by John Wiley & Sons, Chichester UK, 2002, pages 392 to 394, for supplementing a standard steering system to give a slight offset "bias", which is used to avoid the keyhole problem, but were not intended to be used as the means of steering in one of the major axes.
An object of the present invention is to overcome the shortcomings of the prior art by providing an antenna steering mount comprised of two counter-rotating wedged bodies.

Her Majesty the Queen in right of Canada, as represented by the Minister of Industry, Through the Communications Research Centre Canada


A pipe bend for a pipeline for transporting abrasive materials, includes a pair of coupling collars having an outer ring, which has an outer circumferential anchoring groove, and an inner ring secured in the outer ring against axial displacement and made of a more wear-resistant material than the outer ring. Extending between the coupling collars is an arcuate outer pipe portion which is welded at both its ends to the outer rings of the coupling collars, and has a greater inner diameter than the outer rings. Extending at a radial distance to the outer pipe portion between the inner rings of the coupling collars is an arcuate inner pipe portion made of more wear-resistant material than the outer pipe portion and having opposite ends of an inner cross section in coaxial alignment to an inner cross section of the inner rings, for radial support upon the outer pipe portion.

The present invention relates, in general, to a pipe bend for a pipeline for transport of abrasive materials.
Pipelines, comprised of individual pipe members, such as pipe bends and/or straight pipes, for transport of abrasive materials, such as, e.g. sand or concrete, have to meet high demands. On the one hand, the pipe members and in particular the pipe bends of different curvature, which are incorporated in the pipeline, should have inner surfaces that are highly wear-resistant. On the other hand, the pipe members should be of a material sufficient to withstand impacts and shocks, without crack formations. In other words, the pipe members should have a hard inside surface and a soft outside surface.
In order to reconcile these contradicting requirements, pipe members for pipelines have been configured of two layers. The inner layers are hardened at least over a major part of their radial thickness, while the outer layers are made of weldable steel. In this way, the outer layers could also be connected at their ends with coupling collars for respective attachment of two pipe members. These coupling collars are designed with their end faces at a right angle to the longitudinal axes so that, after removal of a, normally split, coupling clamp, a worn-out pipe member can be withdrawn in radial direction from the pipeline and replaced by a new pipe member, without requiring the pipeline to be pulled apart in axial direction.
So long as straight pipe members are involved, this proposal has proven to be useful. However, when pipe bends are involved, this configuration suffers shortcomings as pipe bends are exposed to much higher wear, when the transported material changes the flow direction.
Conventionally, the terminal coupling collars are each comprised of an outer ring, which is formed with an outer circumferential anchoring groove, and an inner ring, which is surrounded by the inner ring and made of more wear-resistant material than the outer ring. The inner ring is secured against axial displacement solely in the direction toward the end faces of the pipe bends. In view of unavoidable manufacturing tolerances, the internal components of the pipe bends, i.e. inner rings and inner layers, are installed at relative clearance, so that the pressure of the transported material causes a shift of the trailing inner rings, together with the inner layers, in the direction towards the leading inner rings, as viewed in material flow direction. Therefore, the gap already provided between the trailing inner rings and inner layers as a result of manufacturing tolerances, widens further between two successive pipe bends. This significantly adversely affects the service life of the pipe bends with the internal components shifted in flow direction.
In addition, in situations when a worn-out seal between two pipe bends must be replaced, and the installer has to replace the trailing pipe bend, as viewed in material flow direction, the gap between adjacent pipe bends is further widened, when the installer mounts the pipe bend in inverse disposition, because the internal components that have shifted in flow direction are cemented tight in their shifted position by the materials. As a consequence, wear is even greater in the transition area from one pipe bend to the neighboring pipe bend.
It would therefore be desirable and advantageous to provide an improved pipe bend which obviates prior art shortcomings and which exhibits high wear resistance and yet is easy to replace and easy to fabricate.
According to one aspect of the present invention, a pipe bend for a pipeline for conveying abrasive materials, such as sand or concrete, includes a pair of coupling collars including an outer ring, which has an outer circumferential anchoring groove, and an inner ring mounted in the outer ring and secured therein against displacement in axial direction, wherein the inner ring is made of a material which is more wear-resistant than a material of the outer ring; an arcuate outer pipe portion extending between the coupling collars and having opposite ends welded to the outer ring of the coupling collars, wherein the outer pipe portion has an inner diameter which is greater than an inner diameter of the outer rings of the coupling collars; and an arcuate inner pipe portion extending at a radial distance to the outer pipe portion between the inner rings of the coupling collars and made of a material which is more wear-resistant than a material of the outer pipe portion, wherein the inner pipe portion has opposite ends of an inner cross section which is in coaxial alignment to an inner cross section of the inner rings, for radial support upon the outer pipe portion.
Although being disposed at comparably great distances to the outer pipe portion in radial direction and to the inner rings of the coupling collars in axial direction, the inner pipe portion can still be reliably integrated in the outer pipe portion, despite imprecisions during fabrication, in such a manner that the terminal inner cross sections of the inner pipe portion are disposed in accurate coaxial alignment with respect to the inner rings of the coupling collars. Radial offsets or stepped shoulders between the inner pipe portion and the inner rings, which would be exposed to increased wear and thus would shorten the service life of the pipe bend can be avoided.
Exact alignment of the terminal inner cross sections of the inner pipe portion with the inner cross sections of the inner rings can be realized by inserting centering pins into the coupling collars from the end faces of the pipe bend, and subsequently radially supporting the inner pipe portion against the outer pipe portion. After removing the centering pins, the inner pipe portion is accurately aligned with the inner rings of the coupling collars. In this way, the pipe bend is not heavier than conventional pipe bends but has a much longer service life.
In view of the fact that the inner rings are secured in position in the outer rings of the coupling collars and the inner pipe portion is secured in position in the outer pipe portion, the internal components of a pipe bend according to the present invention can no longer shift as a consequence of exerted pressure by the conveyed material. A pipe bend according to the present invention has not only a higher wear resistance at the ends of the pipe bend, but it is also immaterial whether the pipe bend is installed in 180xc2x0 rotated disposition after replacement or a change of seals, so that greater gap formation and accompanying increased wear are no longer an issue.
The axial securement of the inner rings in the outer rings of the coupling collars may be realized by mounting the inner ring of each coupling collar to the outer ring between an inwardly directed shoulder at one end of the outer ring and a radially inwards directed constraint at the other end of the outer ring. As the outer ring is welded to the outer pipe portion, the shoulder can be made through a turning process. The respective inner ring is then inserted in the outer ring until abutting the shoulder. The constraint at the other end face may be a radially inwardly directed flange, which extends about the entire circumference, or tabs arranged at predetermined areas and projecting radially inwards, for precisely clamping the inner ring in axial direction.
According to another feature of the present invention, spacers may be provided for securing the inner pipe portion in radial relationship to the outer pipe portion. The spacers may be pins of steel and maintain a required distance of the inner pipe portion from the outer ring in a simple and reliable manner, despite imprecisions during the manufacturing process. The spacers are suitably driven in boreholes of the outer pipe portion so as to be fixed in place and thereby secure a position of the inner pipe portion relative to the outer pipe portion, with the spacers merely abutting the outer surface of the inner pipe portion. Optionally, the spacers may additionally be fixed to the outer pipe portion by a welding process.
According to a variation of the present invention, the inner pipe portion may be secured in radial relationship to the outer pipe portion through spot introduction of a fast curing pasty mass into an annular space between the outer and inner pipe portions via boreholes formed in the outer pipe portion at predetermined locations. In this way, the inner pipe portion is radially secured in place with respect to the outer pipe portion, whereby the annular space between the inner and outer pipe portions is effective, despite imprecisions during the manufacturing process. Examples for the pasty mass include multi-component concrete based on plastic. The mass thus fills the annular space between the inner and outer pipe portions in the area of the boreholes and forms a supporting bridge between the inner and outer pipe portions.
Although it is normally sufficient to fix the inner pipe portion relative to the outer pipe portion in radial direction at predetermined points, it is of course conceivable to inject enough pasty mass via the boreholes to fill, or at least to partially fill, the entire space between the inner and outer pipe portions. Suitably, the boreholes for introduction of pasty mass may be plugged by inserts, made, for example, of steel, which may be secured in the boreholes through a press fit. The length of the inserts may correspond to the wall thickness of the outer pipe portion. Of course, the inserts may be secured in place in the boreholes of the outer pipe portion by other means, e.g. through a welding process.
According to another feature of the present invention, the spacers or the boreholes for introduction of pasty mass are arranged in two axially spaced-apart cross sectional planes at 120xc2x0 offset relationship in each of the cross sectional planes, thereby realizing a proper positioning of the inner pipe portion with respect to the outer pipe portion. Of course, persons skilled in the art will understand that the spacers or the boreholes may also be arranged in more than two cross sectional planes at circumferential offset relationship which may also be smaller or greater than 120xc2x0.
According to another feature of the present invention, the outer ring of each of the coupling collars and the outer pipe portion are made of weldable steel, and the inner ring of each of the coupling collars and the outer pipe portion are made of curable plastics. Examples of cast steel include a chromium carbide based casting material. As cracks caused by stress cannot be avoided, when chromium carbide based casting material is involved, so that inner rings made of such material are very susceptible to fracture, the precise axial securement of the inner rings between the shoulders and the flanges still ensures a full operativeness of the inner rings, even when made of chromium carbide based casting material.
The gap formed between the inner pipe portion, inner rings and outer pipe portion are normally filled quickly during operation by the material being conveyed, so that, in effect, a padding is formed to additionally support the more wear-resistant inner pipe portion with respect to the softer material of the outer pipe portion.
According to another feature of the present invention, the annular space between the outer and inner pipe portions may also be filled with curable plastics. In this way, the inner pipe portion is properly supported already during fabrication of the pipe bend and during transport. In addition, possible material deposits in the annular space are prevented which may cause a deformation of the outer pipe portion, in particular when weight consideration dictate an outer pipe portion of comparably thin wall thickness. Plastic material may be injected in the annular space between the inner and the outer pipe portions via at least one opening which can be subsequently sealed again, for example, through welding, press-fitted pin or welded pin.

Pipe bend for a pipeline for transport of abrasive materials


A new cultivar of hybrid Echinacea, ‘Hot Summer’, characterized by its inflorescences with ray florets that emerge orange-red in color and mature to a deep red, its strong upright habit with blooms and plant habit maintained under environmental stresses such as heavy rains and wind, and its resistance to viral diseases.

The present Invention relates to a new and distinct cultivar of Echinacea of hybrid origin and will be referred to hereafter by its cultivar name, 'Hot Summer'. 'Hot Summer' represents a new purple coneflower, an herbaceous perennial grown for landscape use.
The new cultivar arose from an ongoing breeding and selection program conducted by the Inventor in a designated field at his nursery in Warmond, The Netherlands. The Inventor discovered the new cultivar, 'Hot Summer', as a naturally occurring whole plant mutation in his trial field in summer of 2007. The parentage is unknown as the Inventor grows numerous cultivars and species of Echinacea in his trial bed, however the characteristics of 'Hot Summer' suggest both Echinacea paradoxa and Echinacea purpurea in its parentage.
Asexual reproduction of the new cultivar was first accomplished by in vitro propagation in Rijswijk, The Netherlands in 2008 under the direction of the Inventor. The characteristics of this cultivar have been determined to be stable and are reproduced true to type in successive generations.


A terminal device is described that includes a housing configured to accommodate various components of the terminal device; a first sensing unit configured to collect first status information of the terminal device; a second sensing unit configured to collect second status information of the terminal device; and a processing unit configured to determine a manner that a user holds the terminal device based on the first status information and the second status information.

This application claims priority to Chinese patent application No. CN CN201210246742.3 filed on Jul. 16, 2012, the entire contents are incorporated herein by reference.
The present invention relates to a terminal device, and more particularly, to a terminal device capable of identifying a manner that a user holds the terminal device.
At present, more and more users start to use terminal devices such as large-screen mobile phones, tablet PCs or the like. Generally, multiple application icons or multiple virtual keys are provided on touch screens of such terminal devices. In this case, if a user holds a terminal device with one hand (left hand or right hand), the user usually has to use the other hand to operate these application icons or virtual buttons. In this case, if the user's holding manner can be determined and these application icons or virtual buttons can be rearranged based on the user's holding manner, user experience can be improved effectively.

Terminal device having hand shaking sensing units to determine the manner that a user holds the terminal device


A breath alcohol tester calibration station provides a user-friendly system and method for calibrating a breath alcohol tester with a much lower error rate than current systems and methods for calibrating breath alcohol testers. The calibration station includes a data connection to the breath alcohol tester and a fluid connection between the breath alcohol tester and a calibration standard. The calibration station is used to execute calibration processes on the breath alcohol tester using the calibration standard.

A breath alcohol tester is a device for estimating a blood alcohol content (BAC) of a user by analyzing a sample of the user's breath. Typically, the user exhales into the breath alcohol tester and any ethanol present in the user's breath is oxidized to yield acetic acid and hydrogen at an anode of the breath alcohol tester. Further, the hydrogen reacts with atmospheric oxygen to yield water at a cathode of the breath alcohol tester. This chemical reaction produces an electric current between the anode and the cathode and a sensor (and associated circuitry) within the breath alcohol tester measures the magnitude of the electric current. The breath alcohol tester outputs an approximation (or representation) of the user's BAC based on the measured electric current.
The anode, cathode, sensor, or other components of the breath alcohol tester may be prone to contamination and interference from substances other than breath alcohol. Further, over time, sensor aging, humidity, and contamination can alter the output of the breath alcohol tester. As a result, the breath alcohol tester may require regular calibration checks or recalibration (collectively calibration processes) to ensure that the breath alcohol tester outputs an accurate estimation (or representation) of BAC. Further, even if the breath alcohol tester does not require regular calibration for accuracy, regular calibration and/or calibration checks of the breath alcohol tester may be required to comply with equipment limitations and/or applicable administrative or legal (e.g., Federal, State, and Local) laws and regulations, for example. There may be other factors that cause the need for regular calibration checks or recalibration of the breath alcohol tester.
Calibration of the breath alcohol tester may be performed using a Dry-Gas method, for example, although other calibration methods are contemplated herein. The Dry-Gas method utilizes a calibration standard, which is a precise mixture of alcohol and inert nitrogen available in a portable pressurized canister. The breath alcohol tester is connected to the calibration standard and measures the alcohol content of the calibration standard. The measured alcohol content is compared with the known alcohol content of the calibration standard. The calibration of the breath alcohol tester is adjusted, if necessary, to match the alcohol content of the calibration standard within a desired degree of accuracy (e.g., within (0.005%).
Calibration of the breath alcohol tester may require specially trained users to accurately and consistently calibrate the breath alcohol tester. Further, if the trained users do not perform the calibration regularly, the users may avoid performing the calibration, induce errors in the calibration, and/or forget how to do the calibration and become uncomfortable performing the calibration. Still further, a failure to correctly calibrate the breath alcohol tester (or not calibrate the breath alcohol tester at all) may render the results obtained from the breath alcohol tester invalid.

Breath alcohol tester calibration station


An optical pickup head for operating on an information recording medium includes a light source for emitting a light beam. A transparent base plate has opposite surfaces formed with a semitransparent film and a hologram respectively. The semitransparent film is exposed to the light beam emitted from the light source, and reflects a portion of the light beam emitted from the light source. The portion of the light beam which is reflected by the semitransparent film forms a forward light beam. A condenser optical system serves to focus the forward light beam on the information recording medium. The forward light beam is reflected at the information recording medium, and forms a backward light beam. The backward light beam successively passes through the condenser optical system, the semitransparent film, and the transparent base plate, and then reaches the hologram. The hologram generates a backward +1-order diffraction light beam from the backward light beam. A plurality of photodetectors serve to receive the +1-order diffraction light beam and to convert the received +1-order diffraction light beam into corresponding electric signals respectively.

This invention relates to an optical pickup head for optically reproducing, recording, or erasing information from or on an optical or magneto-optical recording medium.
An optical recording medium such as an optical disk is formed with a pattern of a groove or pits which represents recorded information. Some optical pickup heads are used in reproducing information from such an optical recording medium. In general, the optical pickup head applies a laser light beam to the optical recording medium and detects the laser light beam reflected back from the optical recording medium. Since the reflected laser light beam depends on a pattern on the optical recording medium, the reflected laser light beam represents information on the optical recording medium. Thus, the detection of the reflected laser light beam enables the reproduction of the information.
As will be explained later, prior art optical pickup heads have some problems.

Matsushita Electric Industrial, Co., Ltd.


Techniques for improving overall data throughput in a computer system, especially during the playing of movies from CD-ROMs provides for a direct flow of data between the CD-ROM and the MPEG card, greatly reducing system memory usage and bus utilization. Control circuitry is responsive to signals from the CPU, which signals specify whether data from the CD-ROM can be sent directly to the MPEG decoder circuit or needs to be sent over the buses to the system memory. Accordingly, different transmission paths are used, depending on the attribute and destination of the data in order to reduce unnecessary data flow in the system and unnecessary consumption of system resources.

The present invention relates generally to computer systems, and more specifically to techniques for increasing data throughput in such systems.
In conventional systems, data transfers are generally under the control of the CPU, and data flow can be between the CPU and system memory, between the CPU and persistent data storage devices, between the data storage devices and the system memory, and between the CPU and peripheral devices. In addition to requiring CPU cycles, such data transfers also occupy the buses that connect the various devices. As the power of CPUs has increased, the data flow needs in the computer system also have increased. In general, however, the techniques for efficiently moving data among the various devices in the system have not kept pace with the huge increases in CPU power.
In modern multitasking operating systems, the computer system executes different programs concurrently. However, with many different processes competing both for CPU resources and bus bandwidth, any bottlenecks have the effect of slowing the entire system. These problems are especially evident in modern computers which include multimedia capabilities. In recognition of the fact that there is in general a mismatch in the relative speeds and demands of various devices in the system, multiple-level bus systems have been developed.
FIG. 1 shows a schematic of a conventional personal computer system 10 utilizing a three-bus system in which a CPU 12 communicates with other system resources. The buses are arranged in a hierarchy based on speed and width. In a typical PC-compatible system, the CPU communicates with a memory subsystem and various I/O (peripheral) devices. The nature of these devices is well known, but will be described briefly.
The CPU communicates with a memory subsystem (including system memory 15 and second-level cache memory 17) on a system bus 20, also referred to as a host bus or a local bus, while one or more.peripheral buses are used for other devices. In a modern system, the system bus is a 64-bit bus that operates at 66 MHz.
In the specific architecture shown in FIG. 1, the peripherals are coupled to one or the other of a fast peripheral bus 25, such as a PCI bus, or a slow peripheral bus 30. The slow peripheral bus is typically an industry standard expansion bus such as an ISA bus, an EISA bus, or an MCA bus. The industry standard expansion bus is often referred to herein as a legacy bus, since its primary purpose is to be compatible with past generations of 8-bit and 16-bit peripheral devices whose functions are such that they can still perform adequately in a modern system. In particular, the PCI bus is coupled to the system bus through a host/PCI bridge 32, while the PCI bus is coupled to the legacy bus through a PCI/legacy bridge 35. In an alternative configuration, the legacy bus is coupled to the system bus through a host/legacy bridge 37. This latter configuration is suggested by having host/legacy bridge 37 shown in phantom. In a typical implementation, host/PCI bridge 32 is part of a chipset that also incorporates system logic such as a memory controller for system memory 15.
As a general matter, the PCI bus includes PCI bus resources (a PCI bus master, PCI target memory, and PCI target I/O), while the legacy bus includes legacy bus resources (a legacy bus master, legacy memory, and legacy I/O). The choice of which peripherals go on which bus is determined in part by cost and speed considerations. In general, PCI bus peripherals are faster and wider versions of the same types of peripherals that can be coupled to the legacy bus. For example, PCI bus 25 is a 32-bit bus that operates at 33 MHz while an ISA bus is a 16-bit bus that operates at 8 MHz.
In the specific embodiment illustrated, the devices coupled to PCI bus 25 include a display controller 40, such as a VGA controller or super VGA controller, and an enhanced IDE controller 45. There are a number of interface standards for peripherals, the most common of which are IDE (Integrated Device Electronics) and SCSI (Small Computer System Interface). These interfaces receive commands from the CPU, and control the operation of the connected peripheral devices. An IDE interface controller, such as a Model M5215 chip from Acer Laboratories, controls up to two disk drives at once. The enhanced IDE interface standard provides for faster data transfers and controls up to four disk drives at once.
Enhanced IDE interface controller 45 includes primary and secondary IDE interface controllers, and in this embodiment communicates with a hard disk drive 47 and a CD-ROM drive 48.
The legacy bus devices include a super I/O controller 50, which is interfaced to a floppy disk drive 52, and an MPEG card 57, which is interfaced to a display device 60 such as a CRT monitor or the like. Also coupled to the legacy bus are peripherals such as a network interface card 65 (which may be an Ethernet(copyright) card) and a sound card 67. Also shown schematically connected to legacy bus 30 are a ROM BIOS 75, a printer 77, a keyboard 80, a pointing device 82 (which may be a mouse, trackball, or similar device), and a scanner 85. It should be understood that coupling of some of these latter devices is shown schematically since they may be coupled to alternative ports and derived buses.
Display controller 40 is coupled to MPEG card 57 by a feature connector 90 in order that the display controller and MPEG controller can coordinate to drive the display. The feature connector is a cable that provides signals, including the DAC signals, to the MPEG card. In other embodiments control signals could be communicated over the bus.
Consider a conventional technique for displaying data stored on a CD in CD-ROM drive 48 on display device 60. The following sequence of steps illustrate the process:
1. CPU 12 executes the CD-ROM driver and MPEG driver programs, which both reside in system memory 15.
2. CPU 12 issues a PLAY command to enhanced IDE controller 45.
3. In response to the PLAY command issued by CPU 12, enhanced IDE controller 45 issues a corresponding PLAY command to CD-ROM controller 48.
4. In response to the PLAY command, CD-ROM controller 48 reads CD-ROM data into its CD-ROM controller buffer.
5. Enhanced IDE controller 45 reads data from the CD-ROM controller buffer into its enhanced IDE controller buffer.
6. Host/PCI bridge 32 reads the data from the enhanced IDE controller buffer into its Host/PCI bridge buffer via PCI bus 7.
7. Host/PCI bridge 32 reads data from the Host/PCI bridge buffer and transfers it to CPU 12 via system bus 20.
8. Host/PCI bridge 32 reads data from CPU 12 into system memory 15 via system bus 20.
9. Host/PCI bridge 32 reads data from system memory 15 into CPU 12 via system bus 20.
10. Host/PCI bridge 32 reads data from CPU 12 into the Host/PCI bridge buffer via system bus 20.
11. Host/PCI bridge 32 reads data from the Host/PCI bridge buffer and transfers it to the PCI/Legacy bridge""s buffer via PCI bus 25.
12. PCI/Legacy bridge 35 transfers data from the PCI/Legacy bridge buffer into the MPEG card""s buffer via legacy bus 30.
13. MPEG card 57 decompresses the data and outputs accordingly to display device 60, incorporating the signals from display controller 40.
The data flow is shown schematically in Table 1.
While this type of data transfer may not present a major problem for some types of data, consider the case where the CD-ROM is used for playing a movie clip. The large amount of data to be processed and transferred represents a major load on the system. For example, for a 320xc3x97200 24-bit color picture, the size is about 187.5 KB (320*200*24÷8) for but a single frame. A movie needs to play 30 frames per second, which would result in a file of size 5.5 MB for one second""s playing, or 330 MB for one minute""s playing, or 30 GB for 90 minutes"" playing. If high fidelity is required, the data size will even increase. The MPEG card provides compression according to the MPEG standard to solve this problem, but even if the compression technique could achieve a perfect compression rate of 1:30, there will still be 1 GB data for 90 minutes playing. Thus, during the playing of the movie, the flow of data moving back and forth between the system and peripherals via the buses would place a great strain on the system resources.
The present invention provides techniques for improving overall data throughput in a computer system, especially during the playing of movies from CD-ROMs.
In short, the present invention recognizes and exploits the fact that a large portion of the data transfer described above is unnecessary. By a relatively small reconfiguration of the computer system, the invention provides for a direct flow of data between the CD-ROM and the MPEG card, greatly reducing system memory usage and bus utilization.
In a specific embodiment, control circuitry is responsive to signals from the CPU, which signals specify whether data from the CD-ROM can be sent directly to the MPEG decoder circuit or needs to be sent over the buses to the system memory. Accordingly, the invention provides different transmission paths depending on the attribute and destination of the data in order to reduce unnecessary data flow in the system and unnecessary consumption of system resources.
A further understanding of the nature and advantages of the invention may be realized by reference to remaining portions of the specification and drawings.

Method and apparatus for increasing data throughput in a computer system


A conveyor includes a frame, at least two arms at least one of which is movably mounted to the frame, at least two rails wherein each rail is coupled to an end of one of said at least two arms, at least two belts wherein each belt is rotatably mounted on one of said at least two rails such that the belts are capable of engaging plants therebetween and moving the plants along a conveyor axis, and one or more bias members which are configured to bias said at least one movable arm toward the other one of said at least two arms. The conveyor further comprises an expanding mechanism which is configured to exert an outward force on said at least one movable arm upon engagement so that said at least one movable arm move away from another arm.

Many plants are first grown in nursery beds rather than planted directly. These are then removed from the beds and transplanted into field or forest land where the plants mature. One concern is that the plants' roots and stems are relatively undamaged when they are lifted from the nursery beds. Otherwise, root loss or stem damage can have an adverse effect on plant development.
A number of harvesting apparatuses are available for harvesting or lifting plants that are subsequently to be transplanted. Some harvesting apparatuses can include plant conveyors. Some current conveyors include paired belts on a rail and pulley system mounted rigidly to a harvester frame. These paired belts grasp and move plants up and away from nursery beds. Then, the paired belts release the plants into a storage bin wherein they are gathered or stacked.
The gap between each pair of belts can be kept at a distance wide enough for the plants to travel up the belts without stem damage but close enough so that the plants do not slip from the paired belt and drop to the ground. In existing systems, the gap between each pair of belts of current conveyors can only be adjusted mechanically by loosening bolts attaching the belt rails to the harvester frame and physically moving the rails closer together or farther apart.

Plant conveyor and method for harvesting plants


Techniques are disclosed involving coils that may be used to exchange wireless energy between devices. For instance, a device may include a coil having a plurality of turns arranged along an arc. Further, the coil may have first and second ends that are substantially normal to the arc. The coil may be arranged within a casing of the device. This casing may have first and second non-parallel surfaces. In embodiments, the first end of the coil may be directed to (be substantially parallel with and proximate to) the first surface, while the second end of the coil may be directed to the substantially parallel with and proximate to) the second surface. The coil may be employed in wireless power transfer and/or near field communication applications.

Devices within close proximity of each other may wirelessly transfer energy for various reasons. For instance, a device may wirelessly charge another device's battery. Also, a device may wirelessly provide another device with operational power. Such exchanges of energy are called wireless power transfer (WPT). Further, two devices may exchange wireless signals to engage in near field communications (NFC).
Such wireless energy transfer may involve an electromagnetic coupling between proximate coils. For example, a first device may have a transmitting coil and a second device may have a receiving coil. When an electrical current flows through the transmitting coil, a magnetic field is generated. In turn, this magnetic field may induce an electrical current in the receiving coil.
It is desirable for coil structures to efficiently transfer wireless energy. Further, it is desirable for such structures to be integrated into multiple host devices without significant modification or customization. Moreover, it is desirable for such structures to be resistant to noise and interference, as well as to provide energy transfer at various spatial directions.


A holder device for holding a recording paper roll includes a pair of holders. A first holder has a first fitting portion with an anti-slip device and a first engagement portion. The anti-slip device has two claw members for forward rotation symmetrically disposed each other with respect to a center of rotation of the recording paper roll, two claw members for backward rotation disposed likewise, and springs biasing each claw member to an engagement position. When the first holder rotates in a forward or backward direction, the claw members for forward rotation or for backward rotation move to the engagement positions, respectively, in order to prevent a slip of the recording paper roll. An edge of each claw member is tapered along an attachment direction of the recording paper for easy attachment.

1. Field of the Invention
The present invention relates to a holder device for holding a recording paper roll composed of a heat-sensitive recording paper, a photographic paper, or the like.
2. Background Arts
A photographic printer and a color thermal printer use a recording paper roll. The recording paper roll consists of a tubular spool shaft made of paper or plastic and a continuous recording paper wound thereon. The continuous recording paper is cut into a sheet of regulation-sized paper after printing.
A paper-feeding section of the printer is provided with a holder device of the recording paper roll. When the recording paper roll is set on the holder device, a pair of holders rotatably holds the recording paper roll. Each holder has a fitting portion which fits an inner surface of the spool shaft, and a rotational shaft. The recording paper roll is driven by a motor, for example, provided in the printer.
As a well-known drive system of the recording paper roll, there is a drive gear system in which a drive gear provided in one of holders rotates the spool shaft of the recording paper roll. This system, however, has a disadvantage in that if the holder loosely fits the spool shaft, the holder slips on the inner surface of the spool shaft, so that rotation of the holder is hardly transmitted to the recording paper roll.
In order to prevent a slip of the holder, there is an effective way in that a key groove is formed in the plastic spool shaft and a key provided in the holder is fitted therein. In a case where the paper spool shaft is used with environmental consciousness, however, it is impossible to form the key groove in terms of accuracy in molding.
To prevent a slip on the paper spool shaft, it is effective to provide claw members in the holder and engage the claw members with the inner surface of the spool shaft. In this case, the claw members have to be strongly biased toward the inner surface of the spool shaft. Thus, there is a disadvantage in that bias makes it difficult to attach the recording paper roll to the holder.


A mounting apparatus is configured for mounting a slide rail to a bracket. The bracket includes a flange with a plurality of mounting holes defined therein. A plurality of mounting rods is arranged on the slide rail for engaging in the corresponding mounting holes of the flange. The mounting apparatus includes a resisting member fixed to the slide rail, and an operating member pivotably attached to the resisting member. The resisting member includes a resisting portion configured for engaging with the flange. The operating member is capable of urging the resisting portion of the resisting member away from the flange.

1. Field of the Invention
The present invention relates to mounting apparatuses, and more particularly to a mounting apparatus for mounting a slide rail.
2. Description of Related Art
Traditionally, a slide rail is used between two objects that can move relative to each other, such as between a desk and a drawer, a server, a rack etc.
A conventional slide rail assembly for a drawer and a desk includes an outer slide rail mounted to the desk, an inner slide rail mounted to the drawer, and an intermediate slide rail mounted between the outer and inner slide rails. The intermediate slide rail is extendable relative to the outer slide rail, and the inner slide rail is extendable relative to the intermediate slide rail, thus the drawer can be extended a distance out from the desk. A plurality of screws is used for mounting the outer slide rail to a bracket of the desk. Therefore, installing/uninstalling the outer slide rail to/from the bracket is inconvenient and time-consuming.
Consequently, it is desired to provide a mounting apparatus for conveniently mounting a slide rail to a bracket.

Hong Fu Jin Precision Industry (ShenZhen) Co., Ltd.


A bone gripping pincers for osteosynthetic purposes has a swivel joint (1) that can be locked, a minimum of two jaws (2, 3) and a minimum of two legs (4, 5). After bone fragments have been set by means of the bone gripping pincers, its swivel joint (1) can be locked, so that it can act as a permanent bone clamp. The legs (4, 5) can be removed. By a connection pin (9) mounted on the pincers, it is possible to combine several bone pincers into a stable osteosynthetic setting device.

For treating broken bones, particularly for setting bones or bone fragments, a number of osteosynthetic devices are available to the surgeon.
In recent years, a trend from conservative to operative surgical fracture treatment has been clearly evident. At the beginning of operative fracture treatment, optimum reconstruction of the fracture was in the foreground. No great attention was paid to the blood supply and the soft parts around the fracture. Efforts were made to achieve total stability without consideration for biology. With the spread of intramedullar nailing, it was recognized that total stability of the fracture is not absolutely necessary. Despite somewhat greater instability of the fracture, the minimally disrupted biology could heal the fracture. This new knowledge was also taken into consideration in other types of osteosynthesis. In plate osteosynthesis, for example, fewer screws and smaller and shorter plates are used. The same applies to external fixation devices. Instead of huge multi-dimensional structures with interfragment tension bolts, the simple unilateral setting device became accepted.
Despite the "biological" use of the external fixation device, the fracture does not always heal. This means that the fracture must often be treated with a second operation and another osteosynthetic method. The principal reason for complications are the nails or screws that are driven from outside through the skin and the soft tissue into the bone. Along these nails or screws, germs get into the bone, which leads to what is known as a "pintrak infection." If such an infection occurs, the nails or screws must be removed. While the infection is healing, which takes about ten days, the fracture cannot be set by means of an operation. The consequence is that during this period the patient must be immobilized.
In addition to this risk of infection with customary external setting devices, another disadvantage is becoming more apparent. Measurements with doppler lasers, with which the blood circulation in the bone can be clinically measured, have shown that inserting nails or screws causes a considerable disruption in the circulation in the bone. This means that in inserting external fixation devices, nails, or screws, the surgeon is already creating the next stage in the treatment (including the risk of Pintrak infection and ten-day immobilization of the patient for change of procedure). This has negative effects when, because of time factors, or for treatment of damage to soft tissue, the external setting device is temporarily used. In the case of a catastrophe, such as an airplane crash or railroad accident, injured persons must be treated as quickly as possible. For such cases the external setting device is excellent. Here too, however, the above-described problems will arise.


An apparatus configured for treating sulfur at an elevated pressure. Embodiments of the apparatus comprises a vessel into which the sulfur is injected and a device for alleviating the pressure of the sulfur.

Natural gas, as it comes from the ground, may contain impurities. One impurity that is often found in natural gas is sulfur, particularly sulfur in the form of H2S. It may be desirable to remove the sulfur from a natural gas stream because, for example, it may prematurely corrode pipelines and it also may act as a poison to catalysts in downstream processes. One method of removing sulfur from a natural gas process is the Claus Process. The Claus Process generally consists of several steps: (1) oxidizing a portion of the H2S to form some elemental sulfur and some SO2 and (2) reacting some of the remaining H2S and SO2 to form elemental sulfur and water. The sulfur produced in the Claus Process is generally produced at near atmospheric pressure (e.g., less than about 15 psig).
Another method of removing sulfur from a gas stream is through the direct partial oxidation of the H2S to produce water and elemental sulfur. Generally, in this partial oxidation process, a stream containing up to about 3% H2S is partially oxidized over a catalyst to produce, inter alia, elemental sulfur at elevated pressures (e.g., greater than about 15psig). See generally, U.S. Pat. Nos. 5,271,907 and 6,099,819, incorporated herein by reference. The methods of processing sulfur at near atmospheric pressure may not work properly when handling elemental sulfur at elevated pressures. Additionally, other high pressure treatment processes may be capital intensive, may require many moveable parts, which may require frequent maintenance and/or possibly expose workers and operators to high pressure sulfur. Thus, there is a need for a process for processing sulfur at elevated pressures which alleviates or eliminates one or more of these concerns.


A new portable battery charger for jump-starting an engine of a disabled vehicle. The inventive device includes a main housing having a motor and a generator disposed therein. The main housing includes gasoline and oil intake portions in communication with the motor. A pair of cables extend outwardly from one of the side walls of the main housing. The pair of cables are in communication with the generator. The pair of cables each have a spring-loaded clip disposed on free ends thereof for operative coupling with positive and negative terminals of a battery.

1. Field of the Invention
The present invention relates to battery chargers and more particularly pertains to a new portable battery charger for jump-starting an engine of a disabled vehicle.
2. Description of the Prior Art
The use of battery chargers is known in the prior art. More specifically, battery chargers heretofore devised and utilized are known to consist basically of familiar, expected and obvious structural configurations, notwithstanding the myriad of designs encompassed by the crowded prior art which have been developed for the fulfillment of countless objectives and requirements.
Known prior art battery chargers include U.S. Pat. No. 5,212,952 to Yokoyama et al.; U.S. Pat. No. 5,162,662 to Nakayama; U.S. Pat. No. 4,595,841 to Yaguchi; U.S. Pat. No. Des. 309,892 to Troup; U.S. Pat. No. 4,902,955 to Manis et al.; and U.S. Pat. No. 5,444,592 to Shimizu et al.
While these devices fulfill their respective, particular objectives and requirements, the aforementioned patents do not disclose a new portable battery charger. The inventive device includes a main housing having a motor and a generator disposed therein. The main housing includes gasoline and oil intake portions in communication with the motor. A pair of cables extend outwardly from one of the side walls of the main housing. The pair of cables are in communication with the generator. The pair of cables each have a spring-loaded clip disposed on free ends thereof for operative coupling with positive and negative terminals of a battery.
In these respects, the portable battery charger according to the present invention substantially departs from the conventional concepts and designs of the prior art, and in so doing provides an apparatus primarily developed for the purpose of jump-starting an engine of a disabled vehicle.


A telescoping arm comprises a distal end and a proximal end. A head portion is adapted to contact a human back, and is configured to connect to the distal end of the arm. A base is configured to connect to the proximal end of the arm. The base comprises a first drive and a second drive. In one embodiment, the first drive is configured to move the arm in an alternating lateral motion. In another embodiment, the first drive is configured to move the arm in an alternating pivoting motion. The second drive is configured to alternately extend and retract the arm. A single motor may be coupled to both of the first and second drives, or each drive may include a separate motor. The first and second drives are configured to operate simultaneously. A clip is attachable to the base, for removably attaching the base to a stable object. An inverted cradle shaped base extension is also attachable to the base, for resting the back scratcher on a sofa arm.

1. Field of the Invention
The present invention relates to back scratchers, particularly to back scratchers with moving arms.
2. Description of the Related Art
Most back scratchers are manually operated. Those that have motorized movement are limited in the motion that they provide, and are cumbersome to use. What is needed is a back scratcher which can be mounted in a convenient location for hands free use, and which provides a comfortable, "all-over" back scratch by simulating human arm movements.


The present invention relates to a multi-bit non-volatile memory device having a dual gate employing local charge trap and method of manufacturing the same, and an operating method for a multi-bit cell operation.

1. Field of the Invention
The present invention relates to non-volatile memory devices and method of manufacturing the same. More particularly, the present invention relates to a multi-bit non-volatile memory device having a dual gate structure, and method of manufacturing the same, and an operating method for a multi-bit cell operation.
2. Discussion of Related Art
A flash memory, i.e., a non-volatile memory device in which data can be electrically programmed/erased/read can be higher integrated and have a superior data integrity. Therefore, the flash memory can be used as an auxiliary memory of a system and can also be applied to DRAM interface.
The flash memory has been designed toward a direction in which the level of integration is increased and the size is miniaturized. However, in the case where a device structure of an existing 2 dimensional channel is employed, a short channel effect, such as an increase in the leakage current, is generated when the device size shrinks. Accordingly, a problem arises because the integration is limited. To reduce the short channel effect, 30 nm grade triple gate non-volatile memory cells employing a multi gate pin FET structure, a charge trapping type structure, such as MNOS (Metal Nitride Oxide Semiconductor) and MONOS (Metal Oxide Nitride Oxide Semiconductor), and a SONOS (Poly-Silicon Oxide Nitride Oxide Semiconductor) structure was fabricated. However, there is a problem in that the related art gate structures do not sufficiently reduce the short channel effect.
Furthermore, the related art triple gate non-volatile memory cells operate 1-bit. Accordingly, there is an urgent need for multi-bit techniques in which 2-bit or more data can be stored per cell in order to lower the cost per bit and increase the degree of integration. In other words, for the purpose of higher integration of the memory, there is a need for a gate structure capable of reducing the short channel effect and a multi-bit structure capable of storing 2-bit or more data.

Multi-bit non-volatile memory device having a dual-gate and method of manufacturing the same, and method of multi-bit cell operation

Korea Advanced Institute of Science and Technology


An elliptic curve converting device that converts a first elliptic curve defined on a finite field F into a second elliptic curve defined on the finite field F comprises: an elliptic curve generating unit 210 that searches an elliptic curve that satisfies a speeding-up condition that reduces calculation quantity of arithmetic on the elliptic curve among a group of isogenous elliptic curves of degree L1 that is a group of elliptic curves that has the same order as and a certain relationship with the first elliptic curve; an elliptic curve condition judgment unit 220 that judges whether the elliptic curve that satisfies the speeding-up condition is searched or not by the elliptic curve generating unit 210; and an elliptic curve output unit 230 that outputs an elliptic curve in the case that the elliptic curve condition judgment unit 220 judges that the elliptic curve that satisfies the speeding-up condition is searched.

(1) Field of the Invention
The present invention relates to encryption technology as information security technology and especially to secret communication, digital signature and key-sharing technology using an elliptic curve.
(2) Description of the Prior Art
1. Public-key Encryption
Recently, data communication based on computer technology and communication technology has become widely available, and in this data communication, a secret communication mode or a digital signature mode is used. Here, the secret communication mode is a mode to communicate without leaking communication contents to a person other than the other specified party of the communication. Moreover, the digital signature mode is a mode that shows the correctness of communication contents to the other party of the communication and certifies the identity of the originator.
In the secret communication mode or digital signature mode, an encryption mode called a public-key encryption is used. The public-key encryption is a mode to easily manage encryption keys that are different for each of the other parties of the communication when there are a plurality of other parties of the communication, and is an indispensable fundamental technology to communicate with the plurality of other parties of the communication. In the secret communication using the public-key encryption, an encryption key and a decryption key are different, wherein the decryption key is secret and the encryption key is public.
As a base of security of this public-key encryption, a discrete logarithm problem is used. As for the discrete logarithm problem, there are what is defined on a finite field and what is defined on an elliptic curve as representatives. Moreover, the discrete logarithm problem is described in detail in "A Course in Number theory and Cryptography" by Neal Koblitz, Springer-Verlag, 1987.
2. The Discrete Logarithm Problem on an Elliptic Curve
The discrete logarithm problem on an elliptic curve is described below. The discrete logarithm problem on the elliptic curve is the elliptic curve that defines E (GF (p)) on a finite field GF (p), in the case that the elliptic curve E is divisible by a large prime number, element G included in the elliptic curve is a base point. In this case, it is a question that in the case that an integer x that satisfies (Equation 1) Y=x*G to a given element Y included in the elliptic curve exists, seek x.
Here, p is a prime number and GF (p) is a finite filed that has p pieces of element. Additionally, within this patent specification, the symbol * shows calculation to add element included in the elliptic curve plural times, x*G, as the below-mentioned equation shows, means that element G is added x times.x*G=G+G+G+ . . . +G
The reason that makes the discrete logarithm problem a premise of the security of the public-key encryption is that the above-mentioned problem to the finite field that has many elements is extremely difficult.
3. ElGamal Signature that Applies the Discrete Logarithm Problem on the Elliptic Curve
Thereinafter, the digital signature mode by ElGamal signature that applies discrete logarithm problem on the elliptic curve is explained by using FIG. 1. This figure is a sequence diagram that shows procedures of the digital signature mode by the above-mentioned ElGamal signature. A user A 11, a management center 12 and a user B13 are connected by network. Assume that p is a prime number and an elliptic curve defined on a finite field GF(p) is E. Assume a base point of E is G and the order of E is q. In other words, q is the smallest positive integer to satisfies (Equation 2) q*G=0
Moreover, the point (∞,∞), where both of x and y coordinates are ∞, is called an infinite point, and is represented by 0. This 0, when the elliptic curve is considered as a group, carries out a function of "zero element".
(1) Generation of the Public Keys by the Management Center 12
The management center 12 generates the public key YA of the user A 11, using the secret key xA of the user A 11 that is notified in advance, and complying with the equation 3 (Step S141˜S142).YA=xA*G   (Equation 3)
Thereafter, the management center 12 releases the prime number p, the elliptic curve E and the base point G to the public as system parameters, and releases the public key YA of the user A 11 to another user B 13 (Step S143˜S144).
(2) Generation of a Signature by the User A11
The user A 11 generates a random number k (Step S145). Then, the user A 11 calculates (Equation 4) R1=(rx, ry)=k*G (Step S 146) and calculates s from (Equation 5) s×k=m+rx×xA (mod q). Here, m is a message that the user A 11 transmits to the user B 13. Furthermore, the user A 11 transmits obtained (R1, s) as a signature with the message m to the user B 13 (Step S148).
(3) The Verification of the Signature by the User B 13
The user B 13 confirm the identity of the user A 11 by judging whether (Equation 6) s*R1=m*G+rx*YA satisfies or not (Step S149). This is obvious because
                                                                        s                *                                  R                  1                                            =                                                                            {                                                            (                                                                        (                                                      m                            +                                                          rx                              ×                              xA                                                                                )                                                /                        k                                            )                                        ×                    k                                    }                                *                G                                                                                =                                                                            (                                      m                    +                                          rx                      ×                      xA                                                        )                                *                G                                                                                =                                                                            m                  *                  G                                +                                                      (                                          rx                      ×                      xA                                        )                                    *                  G                                                                                =                                                                            m                  *                  G                                +                                  rx                  *                  YA                                                                                (                  Equation                                                              7                )            satisfies.4. Addition of Points on the Elliptic Curve and Calculation Quantity by Double Multiplication
In each of the generation of the public key, the generation of the signature and the verification of the signature in the digital signature mode that is indicated above by ElGamal signature that applies the discrete logarithm problem on the elliptic curve, the calculation of scalar multiplication of points on the elliptic curve is carried out. For example, "xA*G" indicated in the equation 3, "k*G" indicated in the equation 4, "s*R1", "m*G" and "rx*YA" indicated in the equation 6 are the calculation of the scalar multiplication of the points on the elliptic curve.
The calculation formula of the elliptic curve is explained in detail in "Efficient elliptic curve exponentiation" (written by Miyaji, Ono, and Cohen, Advances in cryptology-proceedings of ICICS, 97, Lecture notes in computer science, 1997, Springer-Verlag, 282–290).
Thereinafter, the calculation formula of the elliptic curve is explained. Assume that the equation of the elliptic curve is y2=x3+a×x+b, the coordinates of a given point P are (x1, y1) and the coordinates of a given point Q are (x2, y2). Here, assume that the coordinates of the point R fixed by R=P+Q are (x3, y3).
In the case of P≠Q, R=P+Q becomes the calculation of addition. The formulae of addition are as follows:x3={(y2−y1)/(x2−x1)}2x1−x2 y3={(y2−y1)/(x2−x1)}(x1−x3)−y1
In the case of P=Q, R=P+Q=P+P=2×P satisfies, R=P+Q becomes double multiplication.
The formulae of double multiplication are as follows:x3={(3x12+a)/2y1}2−2x1 y3={(3x12+a)/2y1)(x1−x3)−y1
Moreover, the above-mentioned calculation is a calculation on the finite field in which elliptic curve is defined. As was indicated above, in 2-term coordinates or affine coordinates, namely, the coordinates described until now, in case that addition calculation is carried out, every one addition on the elliptic curve needs one inverse number calculation. In general, an inverse number calculation needs about 10 times calculation quantity compared with a multiplication on a finite filed.
Then, to reduce the calculation quantity, 3-term coordinates called projection coordinates are used. Projection coordinates are coordinates comprising three terms X, Y, Z, in relation to the coordinate (X, Y, Z) and the coordinate (X′, Y′, Z′), a given number n exists and there is a relationship X′=n X, Y′=n Y, Z′=n Z satisfies, (X, Y, Z)=(X′, Y′, Z′) satisfies. An affine coordinate (x, y) and a projection coordinate (X, Y, Z) corresponds to each other in the below-mentioned relationship.(x, y)→(x, y, 1)(X, Y, Z)→(X/Y, Y/Z)(in the case of Z≠0)
Here, the symbol → is used as the below-mentioned meaning. When a given element in a set S1 corresponds to one element in a set S2, the relationship is indicated by S1→S2.
Thereinafter, all the calculations of the elliptic curve are in the projection coordinates. Next, the addition formulae and the double multiplication formulae on the projection coordinates are explained. These formulae have, of course, consistency with the addition formulae and the double multiplication formulae in the affine coordinates. The calculation of scalar multiplication is realized by the repeated calculation of the addition and the double multiplication on the elliptic curve. Out of these calculations of scalar multiplication, the calculation quantity of addition does not depend on the parameters of the elliptic curve, but the calculation quantity of the double multiplication depends on the parameters of the elliptic curve.
Here, assume that p is a prime number of 160 bits and the elliptic curve is E: y2=x3+ax+b, and when the elements P, Q on the elliptic curve are indicated by P=(X1, Y1, Z1) and Q=(X2, Y2, Z2), R=(X3, Y3, Z3)=P+Q is obtained as follows:
(i) in the case of P≠Q
In this case, it is a calculation of an addition.
(Step 1-1) The Calculation of an Intermediate Value
The below-mentioned equations are calculated.U1=X1×Z22  (Equation 8)U2=X2×Z12  (Equation 9)S1=Y1×Z23  (Equation 10)S2=Y2×Z13  (Equation 11)H=U2−U1  (Equation 12)r=S2−S1  (Equation 13)(Step 1-2) The Calculation of R=(X3, Y3, Z3)
The below-mentioned equations are calculated.X3=−H3−2×U1×H2+r2  (Equation 14)Y3=−S1×H3+r×(U1×H2−X3)  (Equation 15)Z3=Z1×Z2×H  (Equation 16)(ii) in the case of P=Q (namely, R=2P)
In this case, it is a calculation of double multiplication.
(Step 2-1) The Calculation of an Intermediate Value
The below-mentioned equations are calculated.S=4×X1×Y12  (Equation 17)M=3×X12+a×Z14  (Equation 18)T=−2×S+M2  (Equation 19)(Step 2-2) The Calculation of R=(X3, Y3, Z3)
The below-mentioned equations are calculated.X3=T  (Equation 20)Y3=−8×Y14+M×(S−T)  (Equation 21)Z3=2×Y1×Z1  (Equation 22)
Next, the calculation quantity in the case of the addition and the double multiplication of the elliptic curve are explained. Here, the calculation quantity by one multiplication is indicated by 1 Mu1, and the calculation quantity by one square multiplication is indicated by 1 Sq. Moreover, in an ordinary microprocessor, 1 Sq≈0.8 Mu1 satisfies.
According to the above-mentioned examples, the calculation quantity of the addition on the elliptic curve indicated in the case of P≠Q is obtained by counting the numbers of the multiplication and the square multiplication in the equations 8˜16 and is 12 Mul+4 Sq. This is obvious because the calculation quantities of the addition in the equations 8, 9, 10, 11, 14, 15 and 16 are 1 Mul+1 Sq, 1 Mul+1 Sq, 2 Mul, 2 Mul, 2 Mul+2 Sq, 2 Mul and 2 Mul, respectively.
Additionally, according to the above-mentioned examples, the calculation quantity of the double multiplication on the elliptic curve indicated in the case of P=Q is obtained by counting the numbers of the multiplication and the square multiplication in the equations 17˜22 and 4 Mul+6 Sq. This is obvious because the calculation quantities of the square multiplication in the equations 17, 18, 19, 21 and 22 are 1 Mul+1 Sq, 1 Mul+3 Sq, 1 Sq, 1 Mul+1 Sq and 1 Mul, respectively.
Moreover, in the above-mentioned counting of the number, for example, since the equation 14 H3 can be unfolded to H3=H2×H, the calculation quantity of H3 is assumed to be 1 Mul+1 Sq, and since the equation 18 Z14 can be unfolded to Z14=(Z12)2, the calculation quantity of Z14 is assumed to be 2 Sq.
Moreover, as for the equation 14 H2, in the above-mentioned process of calculating H3, H2 is calculated, therefore the calculation quantity of H2 is not counted again. Additionally, at the time of counting the number of multiplication, the number of multiplication that is carried out by multiplying a certain value by a small value is not counted. Thereinafter, the reason is explained. The small values mentioned here are, in the equations 8˜22, the small fixed values that are objects for multiplication and, to be more specific, are the values such as 2, 3, 4, 8 and so forth. These values can be indicated by the binary of 4 bits at most. On the other hand, the other variable numbers have the value of 160 bits ordinarily.
Generally, in a microprocessor, the multiplication of the multiplier and the multiplicand is carried out by the repetition of the shift of the multiplicand and the addition. In other words, for each bit of the multiplier represented by binary, in the case that this bit is 1, in order that the least significant bit of the multiplicand represented by binary matches the position where this bit exists, by shifting the multiplicand, one bit string is obtained. In relation to all the bits of the multiplier, all of at least one bit of string obtained by this means are added.
For example, in the multiplication of the multiplier of 160 bits and the multiplicand of 160 bits, the multiplicand of 160 bits is shifted for 160 times, 160 bit strings are obtained and the obtained 160 bit strings are added. On the hand, in the multiplication of the multiplier of 4 bit and the multiplicand of 160 bits, the multiplicand of 160 bits is shifted for 4 times, 4 bit strings are obtained and the obtained 4 bit stirrings are added.
Since the multiplication is carried out as was indicated above, in the case that the multiplication is carried out by multiplying a certain value by a small value, the number of the above-mentioned repetition becomes small. Accordingly, the calculation quantity can be regarded as small and therefore it is not counted as the number of the multiplication. As was explained above, in the case of carrying out the double multiplication of the elliptic curve, the equation 18 includes the parameter a of the elliptic curve. As the value of this parameter a, for example, when a small value is adopted, the calculation quantity of the double multiplication on the elliptic curve can be reduced by 1 Mul and becomes 3 Mul+6 Sq. Moreover, as for the addition, even though the parameter of the elliptic curve is changed, the calculation quantity does not change.
5. Selection of an Elliptic Curve Suitable for Encryption
Next, the method for selecting an elliptic curve suitable for encryption is explained. Moreover, as for the detail, it is written in "IEEE P1363 Working draft" (issued by IEEE on Feb. 6, 1997). The elliptic curve suitable for encryption is obtained by repeating the steps below.
(Step 1) An Arbitrary Selection of an Elliptic Curve
Arbitrary parameters a and b on the infinite field GF (p) are selected. Here, a and b satisfy the equation 23 and p is a prime number.4×a3+27×b2≠0(mod p)  (Equation 23)
Assume that the elliptic curve is E: y2=x3+a×x+b by using the selected a and b.
(Step 2)
To judge whether it is the elliptic curve suitable for encryption, the number of the elements of the elliptic curve E, #E(GF (p)) is calculated, in the case that #E (GF (p)) is divisible by a large prime number (condition 1), and that #E (GF (p))−(p+1)≠0, −1 (condition 2), the elliptic curve E is adopted.
As was explained above, in the case that as the parameter a of the elliptic curve, a fixed small value is elected, although the calculation quantity in the calculation of the scalar multiplication of the elliptic curve is reduced, there is a problem that it is difficult to select a safe elliptic curve suitable for encryption by fixing the parameter in advance.
Conversely, by using the selection method explained above, in the case of selecting a safe elliptic curve suitable for encryption, it is not always possible to select a small value as the parameter a of the elliptic curve, and therefore there is a problem that the calculation quantity cannot be reduced. Thus, to select a safe elliptic curve suitable for encryption and to reduce the calculation quantity in the elliptic curve, there are problems that are contradictory and antagonistic to each other.
6. A Conventional Elliptic Curve Converting Device
To solve the above-mentioned problem, in the Japanese Patent No. 3050313 "AN ELLIPTIC CURVE CONVERTING DEVICE, AND DEVICE AND SYSTEM FOR UTILIZATION", the below-mentioned elliptic curve converting device is indicated. This conventional elliptic curve converting device is a device that converts the inputted and arbitrary elliptic curve E: y2=x3+ax+b without changing its order into the elliptic curve E: y2=x3+ax+b with a small coefficient a (a=−3 and so forth). In other words, maintaining safety, the elliptic curve that is capable of reducing further the calculation quantity is generated.
This device converts the inputted elliptic curve into an isomorphic elliptic curve.
The elliptic curve converting device comprises, as FIG. 2 shows, a parameter receiving unit 110, a converting coefficient acquiring unit 120, a converted elliptic curve calculating unit 130, a parameter sending unit 140.
The parameter receiving unit 110 receives, from outside devices, parameters a and b, an element G on the elliptic curve and a prime number p. Here, p is a prime number of 160 bits.
The outside devices include an encryption device using public-key encryption, a decryption device, a digital signature device, a digital signature verification device, a key-sharing device and so forth. The outside devices use the discrete logarithm problem on the elliptic curve as the premise for the security of the public-key encryption and have the elliptic curve. Here, the elliptic curve that is constructed on the infinite field GF (p) arbitrarily is indicated by E: y2=x3+ax+b, and the element G is an arbitrary point on the elliptic curve and is indicated by G=(x0, y0).
the converting coefficient acquiring unit 120 has a function T (i). The function T (i) has, in the case of i=0, 1, 2, 3 4, the values −3, 1, −1, 2, −2, respectively. Additionally, the function T (i) has, in the case of i=5, 6, 7, 8, 9, 10, 11, . . . , the values 3, 4, −4, 5, −5, 6, −6 . . . , respectively.
The converting coefficient acquiring unit 120 calculates a converting coefficient t that begins from i=0, increases the value of i one by one, satisfies−231+1≦T(i)≦231−1,  (Equation 24)andT(i)=t4×a(mod p),  (Equation 25)and is an element on the infinite field GF (p).
Here, the equation 24 indicates that T (i) is taken on to be less than 32 bits. Moreover, the function T (i) has, in the case of i=0, the value −3 and the converting coefficient acquiring unit 120 refers to the value of the function T (i), beginning from i=0 and adding the value of i one by one, and therefore the value −3 is referred to at the beginning.
Additionally, the function T (i) has, except that it has the value −3 in the case of i=0, the values in sequence from a small absolute value to a large absolute value, and therefore the function T (i) can be referred to in sequence from a small absolute value.
The converted elliptic calculating unit 130 calculates, respectively and as follows, parameters a′ and b′ of the converted elliptic curve Et: y′2=x′3+a′×x′+b′ that is constructed on the infinite field GF (p).a′=a×t4  (Equation 26)b′=b×t6  (Equation 27)
Additionally, the converted elliptic curve calculating unit 130 calculates the element Gt=(xt 0, yt 0) on the converted elliptic curve Et corresponding to the element G as follows:xt0=t2×x0  (Equation 28)yt0=t3×y0  (Equation 29)
Moreover, an arbitrary point on the elliptic curve E is converted into one point on the converted elliptic curve Et defined by the parameters a′ and b′ generated as was stated above.
The parameter sending unit 140 sends out the calculated parameters a′ and b′ on the converted elliptic curve Et, and an element Gt (xt 0, yt 0) to the outside devices.
The conventional elliptic curve converting device like this operates as follows:
The parameter receiving unit 110 receives the prime number p, the parameters a and b (Step S151), and the element G on the elliptic curve (Step S152) from the outside devices. Next, the converting coefficient acquiring unit 120 calculates a converting coefficient (Step S153), the converted elliptic curve calculating unit 130 calculates the parameters a′ and b′ on the converted elliptic curve Et constructed on the infinite field GF (p) and the element Gt=(xt 0, yt 0) on the converted elliptic curve corresponding to the element G (Step S154), and the parameters sending unit 140 sends out the calculated parameters a′ and b′, and the element Gt (xt 0, yt 0) (Step S155).
Moreover, the detailed operations of the converting coefficient acquiring unit 120 are as follows:
The converting coefficient acquiring unit 120 sets a value 0 to i (Step S161). Next, the converting coefficient acquiring unit 120 judges that as for the function T (i), whether
−231+1≦T (i)≦231−1 satisfies or not. When the equation does not satisfy (Step S162), the converting coefficient acquiring unit 120 finishes the operations. When the equation satisfies (Step S162), the converting coefficient acquiring unit 120 calculates a coefficient t that turns out to beT(i)=t4×a(mod p)(Step S163), judges whether the calculated coefficient t is an element on the infinite field GF (p) or not, when it is the element on the infinite field GF (p) (Step S164), the converting coefficient acquiring unit 120 finishes the operations. When it is not an element on the infinite field GF (p) (Step S164), the converting coefficient acquiring unit 120 adds 1 to i (Step S165) and backs the control to Step S162 again.
Next, the converted elliptic curve calculating unit 130 operates as follows:
The converted elliptic curve calculating unit 130 calculates a parameter a′=a×t4 of the converted elliptic curve constructed on the infinite field GF (p) (Step S 171), and a parameter b′=b×t6 (Step S172). Additionally, the converted elliptic curve calculating unit 130 calculates, as the element Gt=(xt0, yt0) corresponding to the element G, xt0=t2×x0(Step S173) and yt0=t3×y0(Step 174).
This conventional elliptic curve converting device converts the inputted elliptic curve into an isomorphism of the elliptic curve. At Step 164, when T (i)=−3, only in the case that t of the equation 23 is an element of GF (p), it is possible to convert into the elliptic curve that has an equation y2=x3−3x+b.
Here, to be −3=a×t4, the forth root of −3/a on GF (p) must exist. As for an arbitrary x, since the probability that the square root of x on GF (p) exists is 1/2, the probability that the fourth root exists is "the probability that a square root of the square root exists", and therefore 1/2×1/2=1/4. Accordingly, the probability that the above-mentioned t is an element of GF (p) is low at 1/4, and therefore it is not always possible to convert into the elliptic curve that has the equation y2=x3−3x+b.
7. Montgomery-type Elliptic Curve
The above-mentioned elliptic curve converting device makes only the elliptic curves whose equation is y2=x3+a×x+b as its objects. The elliptic curve like this is called a Weierstrass-type elliptic curve.
On the other hand, the elliptic curve whose equation is B×y2=x3+A×x2+x is called a Montgomery-type elliptic curve. This elliptic curve is known that the addition and the double multiplication of points are fast, and the calculation quantities are 4 Mul+2 Sq and 3 Mul+2 Sq, respectively. As was stated in above-mentioned 5, the calculation quantities of the addition and the double multiplication of the Weierstrass-type elliptic curve are 12 Mul+4 Sq and 4 Mul+6 Sq, respectively. Consequently, the Montgomery-type elliptic curve is faster in the addition and the double multiplication of the points. The Montgomery-type elliptic curve is described in detail in "Speeding the Pollard and Elliptic Curve Methods of Factorization" (written by P. L. Montgomery, Math. of Comp. 48, 1987, pp. 243–264).
On the other hand, in a method to generate a safe elliptic curve, there is a case of generating a safe elliptic curve by doing the order calculation and judging whether the elliptic curve is safe or not. Here, in the order calculation, the elliptic curve that is used is also the Weierstrass-type. Consequently, the elliptic curve generated by this method is limited to the Weierstrass-type.
By a similar way of thinking of the conventional elliptic curve converting device, it is thinkable to convert a Weierstrass-type elliptic curve into a Montgomery-type elliptic curve by using the isomorphism of the elliptic curve. Here, as in the case of seeking the elliptic curve that satisfies a=−3 in the conventional elliptic curve converting device, the conversion is not always possible. In other words, the Weierstrass-type elliptic curves which cannot be converted into the Montgomery-type elliptic curves exist. As was stated above, in the case of using an isomorphism, by a technical literature "On the calculation method of the elliptic curve encryption arithmetic (written by Tetsuya Izu, SCIS' 99, pp. 275–280), the probability that Weierstrass-type elliptic curves can be converted into the Montgomery-type elliptic curves is about 19/48, and therefore there is a problem that it is not always possible to convert into the Montgomery-type elliptic curves.
As was stated above, the conventional elliptic curve converting device can convert the inputted arbitrary elliptic curve, with the safety maintained, into the elliptic curve y2=x3−3x+b (the Weierstrass-type elliptic curve), there is a problem that the conversion is not always possible. Additionally, there is a problem that the conversion from Weierstrass-type elliptic curve into the Montgomery type elliptic curve is not always possible.

Elliptic curve converting device, elliptic curve converting method, elliptic curve utilization device and elliptic curve generating device

Matsushita Electric Industrial Co., Ltd.