CN112487740B - Boolean satisfiability problem solving method and system - Google Patents

Boolean satisfiability problem solving method and system Download PDF

Info

Publication number
CN112487740B
CN112487740B CN202011545368.8A CN202011545368A CN112487740B CN 112487740 B CN112487740 B CN 112487740B CN 202011545368 A CN202011545368 A CN 202011545368A CN 112487740 B CN112487740 B CN 112487740B
Authority
CN
China
Prior art keywords
solving
solver
parallel
argument
initial
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011545368.8A
Other languages
Chinese (zh)
Other versions
CN112487740A (en
Inventor
屈璋
刘美华
张岩
吕红亮
黄国勇
毕舜阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Guomicrochip Technology Co ltd
Original Assignee
Shenzhen Guomicrochip Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Guomicrochip Technology Co ltd filed Critical Shenzhen Guomicrochip Technology Co ltd
Priority to CN202011545368.8A priority Critical patent/CN112487740B/en
Publication of CN112487740A publication Critical patent/CN112487740A/en
Application granted granted Critical
Publication of CN112487740B publication Critical patent/CN112487740B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

The invention discloses a Boolean satisfaction problem solving method and a Boolean satisfaction problem solving system, wherein the method comprises the following steps: carrying out multithread parallel solution on the CNF instance in a set threshold condition by adopting a plurality of parallel solvers, wherein each parallel solver adopts different initial arguments; each parallel solver stops solving after triggering a threshold condition, and records the activity score of each argument in the solving process; and selecting an argument with the highest sum of the activity scores obtained by the plurality of parallel solvers as an initial argument of a main solver, and solving the CNF instance. By adopting the technical scheme of the invention, the solution speed of the Boolean satisfiability problem can be improved.

Description

Boolean satisfiability problem solving method and system
Technical Field
The invention relates to the field of electronic design automation (Electronic Design Automation, EDA), in particular to a Boolean satisfaction problem solving method and system.
Background
The satisfiability problem (SAT problem) refers to giving a propositional logic formula expressed in a conjunctive normal form format, and reasoning and judging whether one or more groups of assignments exist or not so that the formula expressed in the conjunctive normal form can be satisfied. Where applicable, the algorithm will give a set of solutions that will allow the problem to be satisfied. From 2002 to 2020, a large number of efficient SAT solvers and advanced algorithms are continuously proposed, wherein the algorithms are mainly divided into two types, namely CDCL (conflict driven clause learning, collision driven clause learning) algorithm and SLS (stochastic local search, random local search) algorithm. The CDCL algorithm is based on the improvement of the DPLL algorithm, analyzes the generated conflict, introduces conflict analysis, clause learning strategy and non-time sequence backtracking strategy, and improves the algorithm solving efficiency. SAT solvers such as Chaff, miniSat, glucose and the like which are improved based on CDCL algorithm frameworks have achieved great effects on SAT problems, and current SAT research is mainly focused on branch heuristic strategies, single sentence propagation, clause learning, restarting, preprocessing, non-sequential backtracking and data structure design.
Chaff has shown that BCP propagation takes a lot of time in the solving process, so a branch heuristic is proposed to give higher activity scores to the arguments continuously appearing in the conflict, so that the arguments can be quickly selected in the next decision, and the existing argument branch heuristic is based on the idea.
But there is still a problem in the initial stage of the solution. On the one hand, in the initial stage of searching, the selection of the branch heuristic is inaccurate due to too few collisions, so that the selection of the branch argument has a certain time limitation. In short, at the initial stage, it is not possible to determine what logical role a selected assigned free argument plays in the proposition logical structure, and only over time, an argument with a certain quality level can be selected by a branching heuristic. On the other hand, the selection of the initial argument directly affects the whole searching process, and the poor initial argument is selected, so that a large number of conflicts can be generated in the solving process, but the learned learning clauses are usually low in quality and can be deleted in the clause library deleting operation. For most solvers, the initial argument is selected by adopting a random assignment mode, which causes a certain space limitation in the initial stage of the solving process.
In the field of electronic design automation, the time and space limitations of SAT solvers in the initial stages of search are particularly evident, because: the field of electronic design automation often constructs a complex circuit by designing some small functional modules and then using the small functional modules, wherein the circuit modules are closely connected but the connection between each circuit module is less, and the bridging argument connecting each circuit module has the function of dividing the module, namely: the internal relation of the circuit module can be solved more or less independently by dividing the bridging argument. However, after such a problem is converted into a SAT problem, some structural information may be lost. Moreover, since the initial value is randomly selected, the argument playing a bridging role in the circuit block cannot be effectively selected. Resulting in wasted time and space. This is also the case in other fields, such as software development, etc.
Disclosure of Invention
The invention aims to solve the technical problems of time limitation and space limitation in the initial resolving stage caused by randomly selecting a first branch argument by a SAT solver in the prior art, and provides a Boolean satisfaction problem solving method and system.
In an embodiment of the present invention, a boolean satisfiability problem solving method is provided, which includes:
carrying out multithread parallel solution on the CNF instance in a set threshold condition by adopting a plurality of parallel solvers, wherein each parallel solver adopts different initial arguments;
Each parallel solver stops solving after triggering a threshold condition, and records the activity score of each argument in the solving process;
And selecting an argument with the highest sum of the activity scores obtained by the plurality of parallel solvers as an initial argument of a main solver, and solving the CNF instance.
In the embodiment of the invention, the set threshold condition comprises the number of times of conflict in the solving process, the number of times of restarting the solving device and the running time of the solving device.
In the embodiment of the invention, the plurality of parallel solvers are obtained by cloning the main solver.
In the embodiment of the invention, the master solver adopts a SAT solver which takes CDCL as an algorithm frame and has a branch heuristic measurement strategy, clause learning, non-sequential backtracking, conflict analysis and restarting strategy.
In the embodiment of the invention, before the multithreaded parallel solution is performed on the CNF instance by adopting a plurality of parallel solvers, the method further comprises the following steps:
Preprocessing the CNF instance, analyzing the relation between the initialized global variable of the CNF instance and the characters and clauses, and optimizing.
In an embodiment of the present invention, there is also provided a boolean satisfiability problem solving system, including:
The parallel solvers are used for carrying out multithread parallel solving on the CNF instance in a set threshold condition by adopting different initial arguments, stopping solving after triggering the threshold condition, and recording the activity scores of the arguments in the solving process;
And the main solver is used for solving the CNF instance by adopting the argument with the highest sum of the activity scores obtained by the plurality of parallel solvers as the initial argument of the main solver.
In the embodiment of the invention, the set threshold condition comprises the number of times of conflict in the solving process, the number of times of restarting the solving device and the running time of the solving device.
In the embodiment of the invention, the plurality of parallel solvers are obtained by cloning the main solver.
In the embodiment of the invention, the master solver adopts a SAT solver which takes CDCL as an algorithm frame and has a branch heuristic measurement strategy, clause learning, non-sequential backtracking, conflict analysis and restarting strategy.
In the embodiment of the invention, the boolean satisfiability problem solving system further comprises:
the random assignment module is used for generating a random initial argument for each parallel solver;
the selection module is used for selecting the argument with the highest activity score in the plurality of parallel solvers;
The initial value assigning module is used for assigning random initial arguments generated by the random assignment module to the plurality of parallel solvers and also used for assigning the argument with the highest activity score as the initial argument to the main solver;
and the preprocessing module is used for analyzing the relation between the initialized global variable and the text and clause of the CNF instance and optimizing the relation.
Compared with the prior art, the Boolean satisfiability problem solving method and system adopt a plurality of parallel solvers to carry out multithread parallel solving on the CNF instance in a set threshold condition, wherein each parallel solver adopts different initial arguments; each parallel solver stops solving after triggering a threshold condition, and records the activity score of each argument in the solving process; and in addition, because the selected variable has very high activity score, the SAT solver can generate a large amount of conflicts at the beginning because the higher the participation conflicts are, and the other variables which are hidden to conflict are preferentially selected to generate a learning clause with higher quality.
Drawings
FIG. 1 is a flow chart of a Boolean satisfaction problem solving method of an embodiment of the present invention.
Fig. 2 shows the comparison of the solving time for improving the solving strategy of glucose3.0 according to the boolean satisfiability problem solving method proposed by the present invention with the solving time of original glucose 3.0.
FIG. 3 is a schematic diagram of a Boolean satisfaction problem solving system according to an embodiment of the present invention.
Detailed Description
The invention provides a Boolean satisfaction problem solving method, which comprises the following steps: carrying out multithread parallel solution on the CNF instance in a set threshold condition by adopting a plurality of parallel solvers, wherein each parallel solver adopts different initial arguments; each parallel solver stops solving after triggering a threshold condition, and records the activity score of each argument in the solving process; and selecting an argument with the highest sum of the activity scores obtained by the plurality of parallel solvers as an initial argument of a main solver, and solving the CNF instance.
Specifically, as shown in fig. 1, the boolean satisfiability problem solving method includes steps S1 to S6. The following description will be given separately.
S1: the master solver is initialized.
In the embodiment of the invention, the master solver adopts a SAT solver which takes CDCL as an algorithm frame and has a branch heuristic measurement strategy, clause learning, non-sequential backtracking, conflict analysis and restarting strategy.
S2: and analyzing the CNF instance and preprocessing.
It should be noted that the CNF instance is formed by combining a plurality of CNF clauses, and each CNF clause is a logical operation related to an argument. Some arguments may exist in only one CNF clause and some arguments may exist in multiple CNF clauses, so the value of each argument affects the result of the operation of the CNF instance. In the CNF clause, the text is an argument or a non-argument.
In step S2, after the relationship between the initialized global variable and the text and clause of the CNF instance is analyzed, mapping the analysis relationship to a process of storing containers such as assignment, activity, association relationship with clause, and the like, and performing a preprocessing optimization operation. Such as deleting text that is repeated within a clause, single text propagation, and some inference cancellation techniques. After the CNF instance file is read, preprocessing techniques such as deleting redundant clauses, detecting covered clauses, etc. are performed.
S3: initializing parallel solvers in each thread, and endowing different initial arguments for each parallel solver in each thread.
In the embodiment of the present invention, a plurality of parallel threads are adopted in a computer server for performing primary solution on the CNF instance, so as to obtain an initial argument of the main solver. The multiple parallel solvers can be obtained by cloning the main solver, or can be different solvers with the same branch heuristic algorithm and unified activity increment as the main solver. Randomly generated initial arguments are selected from each thread, and if the selected initial argument has been assigned or eliminated in the preprocessing stage, the selection is re-selected until the initial argument is not selected.
S4: and the plurality of parallel solvers start solving from the initial argument, stop solving after triggering a set threshold condition, and record the activity score of each argument in the solving process.
Before the parallel solvers start to solve, a threshold condition for solving is set, and in the process of solving, once the threshold condition is triggered, the solution is stopped. The set threshold conditions include the number of collisions in the solution process, the number of solution restarts, and the time the solver is running, for example, the number of collisions is set to 1000, 3, and 3S is run. And when any trigger condition is triggered, stopping the operation of the parallel solver. It is worth mentioning that many modern solvers employ a dynamic restart strategy, for example, the restart strategy employed by Glucose is based on the average LBD of the learning clauses, and if the average of the LBD of the newly generated learning clauses is large, the restart is performed, so that the restart is very frequent, and the average of hundreds of collisions is restarted once.
S5: and after the plurality of parallel solvers stop solving, obtaining the activity scores generated by the parallel solvers, and selecting the variable with the highest sum of the activity scores as the initial variable of the main solver.
After each parallel solver stops solving, a sequence recording the activity of the arguments is generated, the activity scores of the arguments in the sequences are added, and the argument with the highest sum of the activity scores is selected as the initial argument of the main solver. Since the selected argument itself has a very high activity score, the SAT solver will initially generate a large number of collisions and will preferentially select other arguments implying collisions, resulting in a higher quality learning clause, since the higher the participation collisions, the higher the activity score.
S6: and solving and outputting a result by the main solver.
As shown in fig. 2, the boolean satisfiability problem solving method proposed according to the present invention improves the solving strategy of glucose3.0, and compares the solving time of original glucose 3.0. The experimental environment is that the same 64-bit server is configured as Intel (R) Core (TM) i5-7400 CPU @3.00GHZ (4 CPUs), 8192MB RAM, centos virtual machine Linux version 3.10.0-957 and gcc version 4.8.5. As can be seen from fig. 2, the solution time of the improved version of the boolean satisfiability problem solving method according to the present invention is faster than that of the original edition and can be shortened by 90% at the highest.
As shown in fig. 3, corresponding to the above-mentioned boolean satisfiability problem solving method, in the embodiment of the present invention, a boolean satisfiability problem solving system is further provided, which includes a preprocessing module 1, a plurality of parallel solvers 2, a main solver 3, a random assignment module 4, a selection module 5, and an initial value assignment module 6. The following description will be given separately.
The preprocessing module 1 is used for analyzing the relation between the initialized global variable and the text and clause of the CNF instance and optimizing the relation.
The parallel solvers 2 are used for carrying out multithread parallel solving on the preprocessed CNF instance within a set threshold condition by adopting different initial arguments, stopping solving after triggering the threshold condition, and recording the activity scores of the arguments in the solving process.
The main solver 3 is configured to solve the CNF instance by using, as an initial argument, an argument with the highest activity score in the plurality of parallel solvers 2.
The random assignment module 4 is configured to generate a random initial argument for each parallel solver 2.
The selection module 5 is configured to select an argument with the highest sum of the activity scores obtained by the multiple parallel solvers.
The initial value assigning module 6 is configured to assign random initial arguments generated by the random assigning module 4 to the multiple parallel solvers 2, and is further configured to assign the argument with the highest activity score selected by the selecting module 5 as the initial argument to the main solver 3.
In the embodiment of the invention, the set threshold condition comprises the number of times of conflict in the solving process, the number of times of restarting the solving device and the running time of the solving device. The master solver adopts a SAT solver taking CDCL as an algorithm framework and having a branch heuristic measurement strategy, clause learning, non-sequential backtracking, conflict analysis and restarting strategy. The plurality of parallel solvers is obtained by cloning the master solver.
In summary, by adopting the boolean satisfiability problem solving method and system of the present invention, a plurality of parallel solvers are adopted to perform multithread parallel solving on the CNF instance within a set threshold condition, wherein each parallel solver adopts a different initial argument; each parallel solver stops solving after triggering a threshold condition, and records the activity score of each argument in the solving process; and in addition, because the selected variable has very high activity score, the SAT solver can generate a large amount of conflicts at the beginning because the higher the participation conflicts are, and the other variables which are hidden to conflict are preferentially selected to generate a learning clause with higher quality.
The foregoing description of the preferred embodiments of the invention is not intended to be limiting, but rather is intended to cover all modifications, equivalents, and alternatives falling within the spirit and principles of the invention.

Claims (8)

1. A boolean satisfiability problem solving method, comprising:
Carrying out multithread parallel solution on the CNF instance in a set threshold condition by adopting a plurality of parallel solvers, wherein each parallel solver adopts different initial arguments; selecting randomly generated initial arguments in each thread, and if the selected initial arguments are assigned or eliminated in a preprocessing stage, reselecting until the initial arguments are not selected;
each parallel solver stops solving after triggering a threshold condition, and records the activity score of each argument in the solving process; the set threshold condition comprises the number of times of conflict in the solving process, the number of times of restarting the solving process and the running time of the solver; stopping solving when any threshold condition is reached;
And selecting an argument with the highest sum of the activity scores obtained by the plurality of parallel solvers as an initial argument of a main solver, and solving the CNF instance.
2. The boolean satisfiability problem solving method according to claim 1, characterized in that said plurality of parallel solvers is obtained by cloning said master solver.
3. The boolean satisfiability problem solving method according to claim 2, characterized in that said master solver employs a SAT solver with a CDCL as algorithm framework and with a branching heuristic measurement strategy, clause learning, non-sequential backtracking, collision analysis, restarting strategy.
4. The boolean satisfiability problem solving method according to claim 1, further comprising, before multithreaded parallel solving of CNF instances with a plurality of parallel solvers:
Preprocessing the CNF instance, analyzing the relation between the initialized global variable of the CNF instance and the characters and clauses, and optimizing.
5. A boolean satisfaction problem solving system, comprising:
The parallel solvers are used for carrying out multithread parallel solving on the CNF instance in a set threshold condition by adopting different initial arguments, stopping solving after triggering the threshold condition, and recording the activity scores of the arguments in the solving process; selecting randomly generated initial arguments in each thread, and if the selected initial arguments are assigned or eliminated in a preprocessing stage, reselecting until the initial arguments are not selected; the set threshold condition comprises the number of times of conflict in the solving process, the number of times of restarting the solving process and the running time of the solver; stopping solving when any threshold condition is reached;
And the main solver is used for solving the CNF instance by adopting the argument with the highest sum of the activity scores obtained by the plurality of parallel solvers as the initial argument of the main solver.
6. The boolean satisfiability problem solving system according to claim 5, wherein said plurality of parallel solvers is obtained by cloning said master solver.
7. The boolean satisfiability problem solving system according to claim 6, wherein the master solver adopts a SAT solver with a CDCL as algorithm framework and with a branching heuristic measurement strategy, clause learning, non-sequential backtracking, collision analysis, restart strategy.
8. The boolean satisfiability problem solving system according to claim 5, further comprising:
the random assignment module is used for generating a random initial argument for each parallel solver;
the selection module is used for selecting the argument with the highest activity score in the plurality of parallel solvers;
The initial value assigning module is used for assigning random initial arguments generated by the random assignment module to the plurality of parallel solvers and also used for assigning the argument with the highest activity score as the initial argument to the main solver;
and the preprocessing module is used for analyzing the relation between the initialized global variable and the text and clause of the CNF instance and optimizing the relation.
CN202011545368.8A 2020-12-23 2020-12-23 Boolean satisfiability problem solving method and system Active CN112487740B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011545368.8A CN112487740B (en) 2020-12-23 2020-12-23 Boolean satisfiability problem solving method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011545368.8A CN112487740B (en) 2020-12-23 2020-12-23 Boolean satisfiability problem solving method and system

Publications (2)

Publication Number Publication Date
CN112487740A CN112487740A (en) 2021-03-12
CN112487740B true CN112487740B (en) 2024-06-18

Family

ID=74914361

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011545368.8A Active CN112487740B (en) 2020-12-23 2020-12-23 Boolean satisfiability problem solving method and system

Country Status (1)

Country Link
CN (1) CN112487740B (en)

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10614257B2 (en) * 2013-02-22 2020-04-07 Navidia Corporation Parallel linear complementarity solver for rigid body dynamics
US20140337265A1 (en) * 2013-05-08 2014-11-13 Nvidia Corporation Controllability checking systems and methods
CN104123503B (en) * 2014-06-25 2017-02-15 中国人民解放军国防科学技术大学 CNF formula data protection method in SAT problem solving outsourcing process
WO2016029172A1 (en) * 2014-08-22 2016-02-25 D-Wave Systems Inc. Systems and methods for problem solving, useful for example in quantum computing
CN105739951B (en) * 2016-03-01 2018-05-08 浙江工业大学 A kind of L1 minimization problem fast solution methods based on GPU
CN106503827B (en) * 2016-09-21 2020-12-11 国网河北省电力公司 Method and device for processing multi-time sequence mixed integer programming problem
WO2020097534A1 (en) * 2018-11-09 2020-05-14 Schlumberger Technology Corporation Pipeline network solving using decomposition procedure
CN110321218A (en) * 2019-04-10 2019-10-11 苏州卓晋通信有限公司 A method of based on point to point network system solution MIXED INTEGER program
CN110211234B (en) * 2019-05-08 2023-09-22 上海索辰信息科技有限公司 Grid model stitching system and method
CN111159628B (en) * 2019-12-31 2022-09-13 中国人民解放军国防科技大学 Hardware SAT solver for multi-thread parallel execution
CN111142944A (en) * 2019-12-31 2020-05-12 中国人民解放军国防科技大学 Hardware SAT solver based on pipeline execution strategy
CN111159631B (en) * 2019-12-31 2023-08-11 中国人民解放军国防科技大学 Hardware SAT solver based on programmable logic
CN112082146B (en) * 2020-08-14 2022-12-20 东北电力大学 Method for determining length of droplet evaporation section of temperature and pressure reducer for bypass heat supply of thermal power generating unit

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
An Approach for Solving Large SAT Problems on FPGA;Kenji Kanazawa;《ACM Transactions on Reconfigurable Technology and Systems》;20101201(第1期);第1-21页 *
基于动态奖惩的CDCL SAT求解器分支启发式算法;陈秀兰 等;《计算机工程与科学》;20190331;第41卷(第3期);第490-497 *

Also Published As

Publication number Publication date
CN112487740A (en) 2021-03-12

Similar Documents

Publication Publication Date Title
US10437713B2 (en) System and method for equivalence class analysis-based automated requirements-based test case generation
US20160034270A1 (en) Estimating likelihood of code changes introducing defects
Könighofer et al. Debugging formal specifications using simple counterstrategies
CN103365776A (en) Parallel system weak consistency verifying method and system based on deterministic replay
Hamadi et al. Deterministic parallel DPLL
Nadel et al. Accelerated deletion-based extraction of minimal unsatisfiable cores
JP2001312530A (en) Method for image calculation, method for pre-image calculation and method for pruning
Jannach et al. Parallelized hitting set computation for model-based diagnosis
Oliveira et al. Efficient algorithms for the inference of minimum size dfas
CN112487740B (en) Boolean satisfiability problem solving method and system
CN112506789B (en) Parallel pattern matching method for data packet detection
JP5317061B2 (en) A simultaneous classifier in multiple languages for the presence or absence of a semantic relationship between words and a computer program therefor.
US7617466B2 (en) Circuit conjunctive normal form generating method, circuit conjunctive normal form generating device, hazard check method and hazard check device
US20060047495A1 (en) Analyzer for spawning pairs in speculative multithreaded processor
US8478575B1 (en) Automatic anomaly detection for HW debug
Beccuti et al. Markov decision Petri net and Markov decision well-formed net formalisms
CN114595136B (en) Log analysis method, device and equipment
US7089174B2 (en) Modelling device behaviour using a first model, a second model and stored valid behaviour
CN113408597B (en) Java method name recommendation method based on two-stage framework
L'Her et al. Proving sequential function chart programs using timed automata
Wortman et al. A concurrent compiler for Modula-2+
CN116069464B (en) Optimization method and device based on distributed storage call data execution
CN115993989A (en) Code identification method, apparatus, computing device, and computer-readable storage medium
Santos et al. A design methodology for the formal specification and verification of hypermedia documents
CN114327872B (en) Multimedia asynchronous processing method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220629

Address after: 518000 Room 201, A building, 1 front Bay Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretarial Co., Ltd.)

Applicant after: Shenzhen guomicrochip Technology Co.,Ltd.

Address before: 22A, Guoshi building, 1801 Shahe West Road, high tech Zone community, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province

Applicant before: GUOWEI GROUP (SHENZHEN) Co.,Ltd.

GR01 Patent grant